在SEO优化中,使用拼音作为文件名可以提高网站的可读性和搜索引擎友好性。本文将详细介绍如何在Dedecms中实现文章标题页文件名为汉字拼音的形式。
首先,我们需要了解Dedecms的基本设置方法:
选择“网站栏目管理”,进入后修改栏目的高级选项。默认的文章命名规则为:
{typedir}/{Y}{M}{D}/{aid}.html
我们将此规则修改为:
{typedir}/{pinyin}.html
这样可以去掉日期和文章ID的显示,使得文件名更加简洁。
接下来,重新更新一下网站内容,检查是否生效。如果发现生成的文件名类似“zhanzhangdidaishishenmea_1.html”,即后面多了一个“_1”,需要进一步修改。
打开include目录下的inc_channel_unit_function文件,找到以下代码行:
$articleRule = str_replace("{pinyin}",GetPinyin($title)."_"."$aid",$articleRule);
将“. "_" . $aid”部分删除,保存文件即可解决多余编号问题。
对于英文标题的文章,默认会在单词间添加下划线“_”。然而,从SEO角度来看,使用连字符“-”更为合适。为此,需对include/inc/inc_fun_funAdmin.php进行调整。
找到原有循环逻辑,并将其替换为以下内容:
for($i=0;$i<$slen;$i++){
if(ord($str[$i])>0x80){
$c = $str[$i].$str[$i+1];
$i++;
if(isset($pinyins[$c])){
if($ishead==0) $restr .= $pinyins[$c]."-";
else $restr .= $pinyins[$c][0];
}else $restr .= "-";
}else if( eregi("[a-z0-9]",$str[$i]) ){
$restr .= $str[$i];
}else{
$restr .= "-";
}
}
if(substr($restr,-1)=="-") $restr = substr($restr,0,strlen($restr)-1);
return $restr;
注意新增的一段代码:
if(substr($restr,-1)=="-") $restr = substr($restr,0,strlen($restr)-1);
它确保不会在最终结果末尾留下多余的连字符。
完成上述所有步骤后,再次生成静态页面,您会发现新的文件名已正确地以拼音形式展示。
通过这种方式,不仅可以提升用户体验,还能增强搜索引擎抓取效率,从而有助于提高网站排名。