discuz! x 3.0 - 3.4:TAG标签伪静态设置教程 !
1. 修改帖子内tag标签链接,使其伪静态。打开template/default(模板风格)/forum/viewthread_node_body.htm,查找:
<a title="$var" href="misc.php?mod=tag&id=$var" target="_blank">$var</a>
替换为
<a title="$var" href="tag-$var.html" target="_blank">$var</a>
2. 修改tag页,使各个标签链接伪静态。
打开template/default/tag/tag.htm,查找
<a href="misc.php?mod=tag&id=$tag" title="$tag" target="_blank" class="xi2">$tag</a>
替换为
<a href="tag-$tag.html" title="$tag" target="_blank" class="xi2">$tag</a>
3. 修改tag列表页当前位置,使其路径链接伪静态。
打开template/default/tag/tagitem.htm,查找
<a href="misc.php?mod=tag">{lang tag}</a>
替换为
<a href="tag.html">{lang tag}</a>
再查找
<a href="misc.php?mod=tag&id=$id">$tagname</a>
替换为
<a href="tag-$id.html">$tagname</a>
4. 让搜索引擎蜘蛛可爬。
修改根目录下robort.txt,删除
Disallow: /misc.php
Disallow: /*?mod=misc*
修改根目录下misc.php文件,删除
$discuz->reject_robot();
5. 添加伪静态规则。
linux系统(.htaccess或httpd.conf)伪静态规则:
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^tag-(.+)\.html$ misc.php?mod=tag&id=$1
RewriteCond %{QUERY_STRING} ^(.*)
RewriteRule ^tag\.html$ misc.php?mod=tag
WIN的添加(httpd.ini)伪静态规则:
RewriteRule ^(.*)/tag-(.+)\.html*$ $1/misc.php\?mod=tag&id=$2
RewriteRule ^(.*)/tag\.html*$ $1/misc.php\?mod=tag
要保证规则文件内最后一条伪静态规则为
RewriteRule ^(+*)-(+)\.html$ plugin.php?id=$1:$2&%1
或者
RewriteRule ^(.*)/(+*)-(+)\.html(\?(.*))*$ $1/plugin\.php\?id=$2:$3&$5
**否则显示插件不存在或已关闭。 在Discuz! X3.0 - X3.4版本中,TAG标签的伪静态设置是一个常见的需求,通过伪静态可以提升网站的SEO效果和用户体验。以下是详细的设置步骤:
### 1. 修改帖子内TAG标签链接,使其伪静态
打开模板文件 `template/default/forum/viewthread_node_body.htm`,查找以下代码:
$var
替换为:
$var
这一步的目的是将帖子内的TAG标签链接从动态URL转换为伪静态URL。
### 2. 修改TAG页,使各个标签链接伪静态
打开模板文件 `template/default/tag/tag.htm`,查找以下代码:
$tag
替换为:
$tag
这一步的目的是将TAG页面的标签链接从动态URL转换为伪静态URL。
### 3. 修改TAG列表页当前位置,使其路径链接伪静态
打开模板文件 `template/default/tag/tagitem.htm`,查找以下代码:
{lang tag}
替换为:
{lang tag}
再查找以下代码:
$tagname
替换为:
$tagname
这一步的目的是将TAG列表页的路径链接从动态URL转换为伪静态URL。
### 4. 让搜索引擎蜘蛛可爬
为了让搜索引擎蜘蛛能够爬取伪静态的TAG页面,需要修改以下文件:
- **修改根目录下的 `robots.txt` 文件**,删除以下内容:
Disallow: /misc.php
Disallow: /*?mod=misc*
- **修改根目录下的 `misc.php` 文件**,删除以下代码:
$discuz->reject_robot();
### 5. 添加伪静态规则
根据服务器环境的不同,添加相应的伪静态规则:
#### 对于Linux系统(.htaccess或httpd.conf)
在 `.htaccess` 或 `httpd.conf` 文件中添加以下规则:
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^tag-(.+)\.html$ misc.php?mod=tag&id=$1
RewriteCond %{QUERY_STRING} ^(.*)
RewriteRule ^tag\.html$ misc.php?mod=tag
#### 对于Windows系统(httpd.ini)
在 `httpd.ini` 文件中添加以下规则:
RewriteRule ^(.*)/tag-(.+)\.html*$ $1/misc.php\?mod=tag&id=$2
RewriteRule ^(.*)/tag\.html*$ $1/misc.php\?mod=tag
### 6. 确保伪静态规则的正确性
在添加伪静态规则时,确保规则文件中的最后一条规则为以下内容之一:
RewriteRule ^(+*)-(+)\.html$ plugin.php?id=$1:$2&%1
或者
RewriteRule ^(.*)/(+*)-(+)\.html(\?(.*))*$ $1/plugin\.php\?id=$2:$3&$5
**注意**:如果最后一条规则不正确,可能会导致插件无法正常显示或提示“插件不存在或已关闭”。
### 总结
通过以上步骤,你可以成功将Discuz! X3.0 - X3.4版本的TAG标签链接设置为伪静态形式,从而提升网站的SEO效果和用户体验。如果在设置过程中遇到问题,可以参考DZ插件网(https://www.dz-x.net/)的相关教程或寻求技术支持。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。 在Discuz! X3.0 - X3.4版本中,TAG标签的伪静态设置是一个常见的需求,尤其是在SEO优化方面。以下是你提供的步骤的详细解释和补充说明:
### 1. 修改帖子内TAG标签链接,使其伪静态
你提到的修改`template/default/forum/viewthread_node_body.htm`文件,查找并替换`$var`的部分。实际上,这里的具体操作应该是找到TAG标签的链接生成部分,并将其修改为伪静态格式。通常,TAG标签的链接是通过`misc.php?mod=tag&id=xxx`生成的,你需要将其替换为`tag-xxx.html`的形式。
### 2. 修改TAG页,使各个标签链接伪静态
在`template/default/tag/tag.htm`文件中,查找并替换`$tag`的部分。这里的目标是将TAG页的链接从动态URL(如`misc.php?mod=tag&id=xxx`)转换为伪静态URL(如`tag-xxx.html`)。
### 3. 修改TAG列表页当前位置,使其路径链接伪静态
在`template/default/tag/tagitem.htm`文件中,查找并替换`{lang tag}`和`$tagname`的部分。这一步的目的是确保TAG列表页的导航路径(如“当前位置:首页 > TAG > 标签名”)中的链接也是伪静态的。
### 4. 让搜索引擎蜘蛛可爬
为了让搜索引擎蜘蛛能够抓取TAG页面,你需要修改`robots.txt`文件,删除或注释掉以下两行:
Disallow: /misc.php
Disallow: /*?mod=misc*
此外,你还需要修改`misc.php`文件,删除或注释掉`$discuz->reject_robot();`这一行代码,以允许搜索引擎蜘蛛访问TAG页面。
### 5. 添加伪静态规则
根据你的服务器环境(Linux或Windows),你需要添加相应的伪静态规则。
#### Linux系统(.htaccess或httpd.conf)伪静态规则:
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^tag-(.+)\.html$ misc.php?mod=tag&id=$1
RewriteCond %{QUERY_STRING} ^(.*)
RewriteRule ^tag\.html$ misc.php?mod=tag
#### Windows系统(httpd.ini)伪静态规则:
RewriteRule ^(.*)/tag-(.+)\.html*$ $1/misc.php\?mod=tag&id=$2
RewriteRule ^(.*)/tag\.html*$ $1/misc.php\?mod=tag
### 注意事项
- 在添加伪静态规则时,确保规则文件中的最后一条规则是处理插件URL的规则,否则可能会导致插件无法正常访问。例如:
RewriteRule ^(+*)-(+)\.html$ plugin.php?id=$1:$2&%1
或者
RewriteRule ^(.*)/(+*)-(+)\.html(\?(.*))*$ $1/plugin\.php\?id=$2:$3&$5
### 总结
通过以上步骤,你可以成功将Discuz! X3.0 - X3.4中的TAG标签链接转换为伪静态形式,从而提升网站的SEO效果。如果你在操作过程中遇到任何问题,欢迎随时在DZ插件网(https://www.dz-x.net/)寻求帮助。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页:
[1]