去评论
dz插件网

discuz X3.4 TAG标签伪静态方法

admin
2023/01/29 22:29:50
要养成原文件备份的好习惯。演示地址:https://bbs.jatxh.cn/tag.html

1. 修改帖子内tag标签链接,使其伪静态。
打开template/default(模板风格)/forum/viewthread_node_body.htm,查找:

    <a title="$var[1]" href="misc.php?mod=tag&id=$var[0]" target="_blank">$var[1]</a>

[color=rgb(51, 51, 51) !important]复制代码


替换为
    <a title="$var[1]" href="tag-$var[0].html" target="_blank">$var[1]</a>

[color=rgb(51, 51, 51) !important]复制代码


2. 修改tag页,使各个标签链接伪静态。
打开template/default/tag/tag.htm,查找

    <a href="misc.php?mod=tag&id=$tag[tagid]" title="$tag[tagname]" target="_blank" class="xi2">$tag[tagname]</a>

[color=rgb(51, 51, 51) !important]复制代码


替换为

    <a href="tag-$tag[tagid].html" title="$tag[tagname]" target="_blank" class="xi2">$tag[tagname]</a>

[color=rgb(51, 51, 51) !important]复制代码


3. 修改tag列表页当前位置,使其路径链接伪静态。
打开template/default/tag/tagitem.htm,查找

    <a href="misc.php?mod=tag">{lang tag}</a>

[color=rgb(51, 51, 51) !important]复制代码



替换为

    <a href="tag.html">{lang tag}</a>

[color=rgb(51, 51, 51) !important]复制代码


再查找

    <a href="misc.php?mod=tag&id=$id">$tagname</a>

[color=rgb(51, 51, 51) !important]复制代码


替换为

    <a href="tag-$id.html">$tagname</a>

[color=rgb(51, 51, 51) !important]复制代码


4. 让搜索引擎蜘蛛可爬。
修改根目录下robort.txt,删除

    Disallow: /misc.phpDisallow: /*?mod=misc*

[color=rgb(51, 51, 51) !important]复制代码


修改根目录下misc.php文件,注释或删除

    $discuz->reject_robot();

[color=rgb(51, 51, 51) !important]复制代码


5. 添加伪静态规则。
linux系统(.htaccess或httpd.conf)伪静态规则:

    RewriteCond %{QUERY_STRING} ^(.*)$RewriteRule ^tag-(.+)\.html$ misc.php?mod=tag&id=$1RewriteCond %{QUERY_STRING} ^(.*)RewriteRule ^tag\.html$ misc.php?mod=tag

[color=rgb(51, 51, 51) !important]复制代码


WIN的添加(httpd.ini)伪静态规则:(未测,是否可用未知)

    RewriteRule ^(.*)/tag-(.+)\.html*$ $1/misc.php\?mod=tag&id=$2RewriteRule ^(.*)/tag\.html*$ $1/misc.php\?mod=tag

[color=rgb(51, 51, 51) !important]复制代码


要保证规则文件内最后一条伪静态规则为

    RewriteRule ^([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ plugin.php?id=$1:$2&%1

[color=rgb(51, 51, 51) !important]复制代码


或者

    RewriteRule ^(.*)/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html(\?(.*))*$ $1/plugin\.php\?id=$2:$3&$5

[color=rgb(51, 51, 51) !important]复制代码


否则显示插件不存在或已关闭。



原文地址:https://bbs.jatxh.cn/thread-73980-1-1.html