初始化项目:添加后端代码、ThinkPHP框架、前端资源
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\model\app\pc;
|
||||
|
||||
use think\Model;
|
||||
/**
|
||||
* SEO
|
||||
*/
|
||||
class Seo extends Model
|
||||
{
|
||||
|
||||
/**
|
||||
* 获取 seo meta 信息
|
||||
* @param $type
|
||||
* @param $id
|
||||
* @return void
|
||||
*/
|
||||
public function getMeta($type = null,$id = null){
|
||||
$seoConfig = \app\common\model\app\Config::getConfig('pc_seo');
|
||||
$systemConfig = \app\common\model\config\System::getConfig('system');
|
||||
|
||||
$meta = [
|
||||
'title'=>'',
|
||||
'keywords'=>'',
|
||||
'description'=>''
|
||||
];
|
||||
|
||||
if($seoConfig){
|
||||
if($type == 'page' && $seoConfig['page_tdk_status'] == 1){
|
||||
//获取页面
|
||||
$pagedata = \app\api\model\app\pc\Page::where(['id'=>$id])->field(["seo_title","seo_description","seo_keyword"])->find();
|
||||
if($pagedata){
|
||||
$meta['title'] = $pagedata['seo_title'];
|
||||
$meta['keywords'] = $pagedata['seo_keyword'];
|
||||
$meta['description'] = $pagedata['seo_description'];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if($seoConfig['detail_tdk_status'] == 1 && $type != 'page'){
|
||||
switch ($type){
|
||||
case "goods":
|
||||
case "live":
|
||||
$goodsdata = \app\api\model\course\Course::where(['id'=>$id])->field(["name","briefing"])->find();
|
||||
if($goodsdata){
|
||||
$meta['title'] = $goodsdata['name'];
|
||||
$meta['description'] = $goodsdata['briefing'];
|
||||
}
|
||||
break;
|
||||
case "evaluation":
|
||||
$evaluationdata = \app\api\model\app\exam\Exercises::where(['id'=>$id])->field(["name"])->find();
|
||||
if($evaluationdata){
|
||||
$meta['title'] = $evaluationdata['name'];
|
||||
}
|
||||
break;
|
||||
case "search":
|
||||
$meta['title'] = $id."的搜索结果";
|
||||
break;
|
||||
case "vipcard":
|
||||
$vipcarddata = \app\api\model\app\vip\Card::where(['id'=>$id])->field(["title","subtitle"])->find();
|
||||
if($vipcarddata){
|
||||
$meta['title'] = $vipcarddata['title'];
|
||||
$meta['description'] = $vipcarddata['subtitle'];
|
||||
}
|
||||
break;
|
||||
case "activity":
|
||||
$activitydata = \app\api\model\app\activity\Activity::where(['id'=>$id])->field(["name","location"])->find();
|
||||
if($activitydata){
|
||||
$meta['title'] = $activitydata['name'];
|
||||
$meta['description'] = "活动地点:".$activitydata['location'];
|
||||
}
|
||||
break;
|
||||
case "user":
|
||||
$meta['title'] = $id == 'record' ? '学习记录' : ($id == 'info' ? "个人中心" : '我的课程');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if($seoConfig['default_tdk_status'] == 1){
|
||||
$meta['title'] = empty($meta['title']) ? $seoConfig['default_tdk_title'] : $meta['title'];
|
||||
$meta['keywords'] = empty($meta['keywords']) ?implode(",",$seoConfig['default_tdk_keywords']) : $meta['keywords'];
|
||||
$meta['description'] = empty($meta['description']) ? $seoConfig['default_tdk_describe'] : $meta['description'];
|
||||
}
|
||||
}
|
||||
|
||||
$meta['title'] = empty($meta['title']) ? $systemConfig['name'] : $meta['title'];
|
||||
|
||||
return $meta;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user