dedecms 栏目列表分页链接优化

时间:2021-05-02

DEDE默认栏目列表分页链接如:
<li><a href='list_4_1.html'>首页</a></li>
<li><a href='list_4_3.html'>上一页</a></li>
<li><a href='list_4_1.html'>1</a></li>
<li><a href='list_4_2.html'>2</a></li>
<li><a href='list_4_3.html'>3</a></li>
<li class="thisclass">4</li>
<li><a href='list_4_5.html'>5</a></li>
<li><a href='list_4_5.html'>下一页</a></li>
<li><a href='list_4_5.html'>末页</a></li>
这种链接方式其实并不十分合理,比如这是http://www.abc.com/abc/这个栏目的列表分页链接,下面的链接方式才更合理:
<li><a href='/abc/'>首页</a></li>
<li><a href='list_4_3.html'>上一页</a></li>
<li><a href='/ab/'>1</a></li>
<li><a href='list_4_2.html'>2</a></li>c
<li><a href='list_4_3.html'>3</a></li>
<li class="thisclass">4</li>
<li><a href='list_4_5.html'>5</a></li>
<li><a href='list_4_5.html'>下一页</a></li>
<li><a href='list_4_5.html'>末页</a></li>
1.找到\include\arc.listview.class.php这个文件,将$typedir= ereg_replace('^(.*)/','',$this->Fields['typedir']);这种代码添加到“//获得上一页和主页的链接”前;
2.找到$indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>首页</a></li>\r\n";将其改为$indexpage="<li><a href='/".$typedir."/'>首页</a></li>\r\n";
3.找到$prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n";改为:

复制代码

代码如下:


if($prepagenum==1)
{
$prepage.="<li><a href='/".$typedir."/'>上一页</a></li>\r\n";
}
else
{
$prepage.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>上一页</a></li>\r\n";
}
4.找到$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n";改为:
if($j==1)
{
$listdd.="<li><a href='/".$typedir."/'>1</a></li>\r\n";
}
else
{
$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\r\n";
}


使用这种方法的前提是生成的栏目列表页面要放在栏目的根文件夹下。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章