PHPCMS为栏目伪静态链接在URL规则中{$categorydir}{$catdir}不解析有效解决办法
2018-10-13 14:23:17   来源:   浏览: 次

导读:在我们使用phpcms后台,使用url规则为栏目创建伪静态地址规则时,发现{$categorydir}{$catdir}变量不能够被有效解析成链接,如何修改使其有

在我们使用phpcms后台,使用url规则为栏目创建伪静态地址规则时,发现{$categorydir}{$catdir}变量不能够被有效解析成链接,如何修改使其有效呢?

解决方法:

在phpcms系统中,程序默认当生成静态时{$categorydir}{$catdir}是可以使用的,但是在动态(伪静态)条件下是不能用的。这里提供具体的程序修改方法,按部就班既可以解决:

第一步:打开phpcms\modules\content\classes\url.class.php; 

第二步:将122行

1
$url str_replace(array('{$catid}''{$page}'), array($catid$page), $urlrule);

替换为

1
2
3
$url str_replace(array('{$catid}'
'{$page}','{$catdir}','{$categorydir}'), array($catid
$page,$category['catdir'],$category_dir), $urlrule);

第三步:将大约144行的下面一句移动到120行之前的位置:

1
$category_dir $this->get_categorydir($catid);

 

注意替换后的内容中,{$categorydir}后默认有'/',{$catdir}后默认无 '/'