DedeCMS伪静态设置使用$typedir后 列表分页无法同步的解决办法
这个问题不好描述,因为我们在织梦伪静态设置中,实现栏目链接多样化中,有两种方式,一种是把所有栏目的根目录层级文件名写死,例如:http://www.xxx.cn/cms/list-1.html
这种方法栏目的链接就没法实现多样化了,所有的栏目样式都是http://www.xxx.cn/cms/这样。
如果在伪静态设置中,我们在channelunit.helper.php中,把栏目的目录名称,采用调用当前《文件保存目录》名称的话,岂不是所有的栏目都会独特的样式。
例如:
SEO教程栏目链接样式为:http://www.xxx.cn/seo/
织梦二开栏目链接样式为:http://www.xxx.cn/cms/
使用$typedir调用出来的便是《文件保存目录》
所以我们在修改channelunit.helper.php文件中,给文章和栏目填写根目录文件名时就可以用到这个变量$typedir,这个变量的意思是《文件保存目录》名称,这个方法小冬在《织梦全站伪静态设置方法和教程,伪静态链接个性化处理方法》中有提到。
当然只改这里是不能实现栏目页(列表页)翻页的,所以也就需要我们继续修改其他php文件。
如果你是完全按照我给的教程操作的,那么你接下来可以这样操作,就能实现列表页链接多样化,列表页分页同样多样化。
如果使用了$typedir,没有操作以下步骤,栏目分页链接就错了。
找到/include/arc.listview.class.php文件
查找
$nowurls = preg_replace(
“/\-/”,
“.php?”, $purl);
替换为
$nowurls = preg_replace(
“/\-/”,
“.php?”, $typeid);
继续
查找
$geturl =
“tid=”.$this->TypeID.
“&TotalResult=”.$this->Total.
“&”;
(注意:这里是已经改过的,如果大家还没改这里,搜索时就不要复制完了,不然找不到。)
将
$geturl =
“tid=”.$this->TypeID.
“&TotalResult=”.$this->Total.
“&”;
$purl .=
‘?’.$geturl;
替换为
$geturl =
“list-“.$this->TypeID.
“&TotalResult=”.$this->Total.
“&”;
$purl .=
”.$geturl;
这样就能实现你的列表链接翻页也能多样化了。