在DEDECMS中,导航链接默认会带有index.html后缀,这可能会影响网站的SEO优化,为了去掉这个后缀,可以通过以下两种方法来实现:
方法一:修改模板内的对应标签
1、定位标签:在需要修改的模板文件中,找到包含栏目链接的标签,如{dede:arclist}
、{dede:list}
等。
2、添加替换函数:在标签内加入function='str_replace("index.htm","",@me)'
代码,用于替换掉index.html或index.htm后缀,注意,根据实际使用的后缀(index.html或index.htm),选择相应的替换字符串。
对于{dede:arclist}
标签,可以修改为:
{dede:arclist function='str_replace("index.htm","",@me)'}...底层调用{/dede:arclist}
3、保存并重新生成:完成上述修改后,保存模板文件并重新生成网站页面,即可看到导航链接中的index.html后缀已被去掉。
方法二:修改程序文件
1、定位文件:找到DEDECMS安装目录下的include/channelunit.func.php
文件。
2、修改代码:在文件中找到if($isdefault==1)
这一行,在其前面加入如下代码:
//跳转网址 if($ispart>2){ return $typedir; } if($defaultname == 'index.html'){ $defaultname = ''; }
注意,根据实际使用的后缀(index.html或index.htm),选择相应的替换字符串。
3、保存并重新生成:完成上述修改后,保存文件并重新生成网站页面,即可一次性替换所有栏目链接中的index.html后缀。
FAQs
Q1:为什么需要去掉导航链接里的index.html?
A1:从SEO优化的角度来看,去掉链接里的index.html可以使网站权重更高,有利于提升网站排名,去掉index.html后缀后的链接更加简洁美观,有助于提升用户体验。
Q2:修改模板和修改程序文件有什么区别?我应该选择哪种方法?
A2:修改模板的方法是针对单个或少数几个标签进行的局部修改,而修改程序文件则是一次性替换所有栏目链接中的index.html后缀,如果只需要去掉某个特定页面或栏目的index.html后缀,可以选择修改模板的方法;如果需要去掉整个网站所有栏目链接的index.html后缀,则建议选择修改程序文件的方法,无论选择哪种方法,都需要在修改完成后重新生成网站页面以使更改生效。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1231145.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复