在使用dedecms进行网站SEO优化时,文章内容页的标题设置至关重要。合理的标题结构能够提升搜索引擎抓取效果,同时也有助于用户体验。本文将介绍三种方法,帮助您实现“文章标题-栏目名称-网站名”的标题格式。
第一种方法:
修改/include/inc_archives_view.php文件。
查找tp.typedir,然后替换成tp.typedir,tp.typename。
最后,在文章模板中使用以下代码调用栏目名称:
{dede:field name='typename'/}
这样即可完成设置。
第二种方法:
直接在模板中使用以下代码:
{dede:field name='title'/}-{dede:field name='typename'/}-{dede:global name='cfg_webname'/}
这种方法简单直接,适用于大多数情况。
第三种方法:
利用“position”标签实现更灵活的标题格式。以下是具体代码:
{dede:field name='title'/}-{dede:field name='position' runphp='yes'}
$tc="-"; //分隔符
$tw=$GLOBALS['cfg_list_symbol']; //调用位置分隔符
@me=html2text(@me); //去除html标签
$tf=split($tw,@me); //分解成数组
for($ta=(count($tf)-2);$ta>=1;$ta--){
$tk.=trim($tf[$ta]).$tc;
}
$tk=substr($tk,0,-1);
@me=$tk; //赋值给@me
{/dede:field}-{dede:global name='cfg_webname'/}
将以上代码放置在<title></title>标签之间,即可实现“文章标题-二级栏目-一级栏目-网站名”的格式。
此外,如果需要在文章页显示栏目名称,可以按照以下步骤操作:
由于dedecms的文章页模板中没有单独的标签用于显示栏目名称,因此我们需要自定义一个函数来实现这一功能。
首先,编写以下函数并添加到网站目录\\\\include\\\\inc_functions.php文件中:
function My_GetCName($typeid){
$dsql = new DedeSql(false);
$row = $dsql->GetOne("select typename From xkzzz_arctype where ID=$typeid;");
return $row['typename'];
}
接着,在文章页模板中需要引用栏目标题的地方加入以下标签:
{dede:field name='typeid' function='My_GetCName(@me)'/}
通过上述方法,您可以轻松实现dedecms文章页标题和栏目名称的优化设置,从而提升网站的SEO效果。