首页 > 帝国CMS教程 / 帝国cms的TDK标题、关键词、和描述的TDK调用

帝国cms的TDK标题、关键词、和描述的TDK调用

文章整理:陈阳 分类:帝国CMS教程来源:AI虎哥 2
文章主要讨论了帝国CMS在不同页面(首页、栏目页、内容页)中如何智能地调用标题、关键词和描述标签,以优化SEO。针对内容页描述调用错误的问题,提出了通过PHP条件判断来实现正确的调用方法,确保每个页面的元信息符合SEO最佳实践。
首页调用<title>[!--pagetitle--]</title><meta name="keywords" content="[!-
文章主要讨论了帝国CMS在不同页面(首页、栏目页、内容页)中如何智能地调用标题、关键词和描述标签,以优化SEO。针对内容页描述调用错误的问题,提出了通过PHP条件判断来实现正确的调用方法,确保每个页面的元信息符合SEO最佳实践。
首页调用
<title>[!--pagetitle--]</title>
<meta name="keywords" content="[!--pagekey--]" />
<meta name="description" content="[!--pagedes--]" />
父栏目调用
<title><?php $cr=$empire->fetch1("select bname from phome_enewsclass where classid='".$GLOBALS[navclassid]."' limit 1"); echo $cr['bname']; ?></title>
<meta name="keywords" content="[!--pagekey--]" />
<meta name="description" content="[!--pagedes--]" />
子栏目调用/终极栏目调用(有副栏目名调用副栏目名,没有调用栏目名) //此调用方法只适用于终极栏目
<title><?php echo $class_r[$GLOBALS[navclassid]]['bname']?$class_r[$GLOBALS[navclassid]]['bname']:$class_r[$GLOBALS[navclassid]]['classname'] ?></title>
<meta name="keywords" content="[!--pagekey--]" />
<meta name="description" content="[!--pagedes--]" />
栏目父栏目和子终极栏目用一个模板($GLOBALS[navclassid]==2中的2换成最顶级栏目的id)
<title><?php echo $class_r[$GLOBALS[navclassid]]['bname']?$class_r[$GLOBALS[navclassid]]['bname']:$class_r[$GLOBALS[navclassid]]['classname'] ?><?php
if ($GLOBALS[navclassid]==2) {
    echo '';
} else {
    echo '_';
}
?>[!--bclass.name--]-HTD</title>
    <meta name="keywords" content="[!--pagekey--]" />
    <meta name="description" content="[!--pagedes--]" />
内容页调用
<title><?php echo $navinfor['ftitle']?$navinfor['ftitle']:$navinfor['title'] ?>_[!--class.name--]</title>
<meta name="keywords" content="<?php echo $navinfor['keyboard']?$navinfor['keyboard']:$navinfor['title'] ?>" />
<meta name="description" content="[!--smalltext--]" />
我们知道,帝国cms常用的标题、关键词、描述标签如下:
<title>[!--pagetitle--]</title>
<meta name="keywords" content="[!--pagekey--]" />
<meta name="description" content="[!--pagedes--]" />
在帝国7.2版本中这种调用方法在首页和栏目页没有问题,但是在内容页有时候发现描述调用的还是标题,明显不利于SEO,,我们可以通过PHP来实现分别调用,当此页面是内容页模板的时候调用1,是其他模板的时候调用2
<title><?php 
if ($GLOBALS[navinfor]) {
    ?>[!--title--]_[!--class.name--]<?php 
} else {
    ?>[!--pagetitle--]<?php 
}
?></title>
<meta name="keywords" content="<?php 
if ($GLOBALS[navinfor]) {
    ?>[!--keyboard--]<?php 
} else {
    ?>[!--pagekey--]<?php 
}
?>" />
<meta name="description" content="<?php 
if ($GLOBALS[navinfor]) {
    ?>[!--smalltext--]<?php 
} else {
    ?>[!--pagedes--]<?php 
}
?>" />
升级版1,标题判断首页 栏目页 和内容页
<?php
if ($GLOBALS[navinfor])  {?>[!--title--]-[!--class.name--]<?php
} elseif (!$GLOBALS[navclassid]) {?>[!--pagetitle--]<?php
} else {?>[!--pagetitle--]-<a href="http://www.bbsxiaomi.com" target="_blank" class="infotextkey">小米技术社区</a>:www.bbsxiaomi.com<?php
}?></title>
    <meta name="keywords" content="<?php
if ($GLOBALS[navinfor]) {
    ?>[!--keyboard--]<?php
} else {
    ?>[!--pagekey--]<?php
}
?>" />
<meta name="description" content="<?php 
if ($GLOBALS[navinfor]) {
    ?>[!--smalltext--]<?php 
} else {
    ?>[!--pagedes--]<?php 
}
?>" />
升级版2
<title><?php
if($GLOBALS['navclassid']==0)
{
?>
[!--pagetitle--]<?php
}
elseif($navinfor['id'])
{
?>
[!--title--]-[!--class.name--]-www.bbsxiaomi.com<?php
}
elseif($GLOBALS['navclassid'])
{
?>
[!--pagetitle--]-www.bbsxiaomi.com<?php
}
else
{
?>
[!--pagetitle--]<?php
}
?></title>
    <meta name="keywords" content="<?php
if ($GLOBALS[navinfor]) {
    ?>[!--keyboard--]<?php
} else {
    ?>[!--pagekey--]<?php
}
?>" />
    <meta name="description" content="<?php
if ($GLOBALS[navinfor]) {
    ?>[!--smalltext--]<?php
} else {
    ?>[!--pagedes--]<?php
}
?>" />

拓展:
如果有内容简介,截取240个字符(120个汉字),如果没有简介就用标题,代码如下:

<?php if($navinfor[smalltext]){ echo ''.esub(htmlspecialchars(strip_tags($navinfor[smalltext])),240).''; } else { echo ''.$navinfor[title].'';} ?>" />

猜你喜欢

更多

热门标签