当前位置:首页 > 行业动态 > 正文

如何有效移除DEDECMS中的导航链接index.html?

方法一:在模板文件中删除index.html链接;方法二:在后台管理中修改导航设置。

在DEDECMS中,导航链接默认会带有index.html后缀,这可能会影响网站的SEO优化,为了去掉这个后缀,可以通过以下两种方法来实现:

如何有效移除DEDECMS中的导航链接index.html?  第1张

方法一:修改模板内的对应标签

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后缀,则建议选择修改程序文件的方法,无论选择哪种方法,都需要在修改完成后重新生成网站页面以使更改生效。

0