前段时间写了篇《Discuz不利于搜索引擎》,感谢大漠孤狼的建议,直接修改Discuz控制伪静态地址的函数,最后一个数字始终输出为1,这样可以保证rewrite之后的地址是单一的,但是缺点是URL不能给discuz正确传递参数,所以如果返回版面的时候只能返回到改版的首页而不能返回到该帖所在的页面。如果这算是对DISCUZ功能的牺牲,这点小牺牲是绝对值得的。

具体解决办法如下:

修改Rewrite的格式,最后一个数字统一用1代替。解决url变化和重复的问题

修改文件include/global.func.php的:

function rewrite_thread($tid, $page = 0, $prevpage = 0, $extra = '') {	return '<a href="thread-'.$tid.'-'.($page ? $page : 1).'-'.($prevpage && !IS_ROBOT ? $prevpage : 1).'.html"'.stripslashes($extra).'>';}

改为:

function rewrite_thread($tid, $page = 0, $prevpage = 0, $extra = '') {	return '<a href="thread-'.$tid.'-'.($page ? $page : 1).'-'.'1'.'.html"'.stripslashes($extra).'>';}
这样,不管贴子是在哪一页,最后一个数字都是1了。

« 被点名了Google十周年-从车库走向辉煌的经典传奇 »

0 回复,0 引用: 让DISCUZ论坛更利于搜索引擎

添加回复

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。