如何正确配置DedeCMS 5.7系统中TAG标签的伪静态设置?
- 行业动态
- 2024-10-08
- 2
DedeCMS 5.7系统TAG标签伪静态设置的详细步骤如下:
一、DedeCMS 5.7系统TAG标签伪静态设置的意义
DedeCMS(织梦内容管理系统)默认生成的是静态HTML文件,这对于SEO和网站管理已经非常友好,一些动态页面如Tag标签页、搜索页等,为了更好的被搜索引擎收录,需要进行伪静态设置,如果每天更新的内容量非常大,生成静态HTML文件也会成为系统和人力的负担,通过伪静态设置,可以避免不断繁琐地生成HTML文件。
前期准备工作
1. 确保服务器和空间支持伪静态
在开始设置伪静态之前,确保你的服务器或空间支持伪静态,如果是服务器,可以自行设置;如果是虚拟主机,需咨询IDC服务商是否支持伪静态(一般虚拟主机都支持),Apache服务器可以通过.htaccess文件配置伪静态规则,而IIS服务器则需要加载Rewrite组件并配置httpd.ini文件。
2. 开启DedeCMS伪静态
登录DedeCMS后台,依次点击“系统参数” > “核心设置”,将“是否使用伪静态”选项设置为“是”,如果你启用了DedeCMS问答模块,还需在“系统参数” > “模块设置”中将“是否使用Rewrite”选项设置为“是”。
具体操作步骤
1. 修改添加栏目和文章时的默认设置
为了减少手动操作,可以将添加栏目和文章时的默认选项设置为动态浏览。
修改添加栏目时的默认选项:找到后台文件/dede/templets/catalog_add.htm
,将以下代码:
<td height="26" style="paddingleft:10px;">栏目列表选项:</td> <td><input type='radio' name='isdefault' value='1' class='np' checked="checked" />链接到默认页 <input type='radio' name='isdefault' value='0' class='np' />链接到列表第一页 <input type='radio' name='isdefault' value='1' class='np' />使用动态页</td>
改为:
<td height="26" style="paddingleft:10px;">栏目列表选项:</td> <td><input type='radio' name='isdefault' value='1' class='np' />链接到默认页 <input type='radio' name='isdefault' value='0' class='np' />链接到列表第一页 <input type='radio' name='isdefault' value='1' checked="checked" class='np' />使用动态页</td>
修改添加文章时的默认选项:找到后台文件/dede/templets/article_add.htm
,将以下代码:
<td width="90">发布选项:</td> <td width="379"><input name="ishtml" type="radio" class="np" value="1" checked="1" />生成HTML <input type="radio" name="ishtml" class="np" value="0"/>仅动态浏览 </td>
改为:
<td width="90">发布选项:</td> <td width="379"><input name="ishtml" type="radio" class="np" value="1" />生成HTML <input type="radio" name="ishtml" class="np" value="0" checked="1"/>仅动态浏览 </td>
2. 修改已生成的静态栏目或文章为动态浏览
如果网站已经存在生成的静态栏目或文章,可以在后台执行SQL命令行工具,输入以下语句:
update dede_arctype set isdefault=1; update dede_archives set ismake=1;
注意:这里的dede
是安装时的数据表前缀,根据实际情况进行替换。
3. 修改频道、列表页、文章页的URL格式
打开/include/helpers/channelunit.helper.php
文件,进行以下修改:
修改GetTypeUrl()函数:将以下代码:
//动态 $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
改为:
//动态 $reurl = "/category/list".$typeid.".html";
修改GetFileName()函数:将以下代码:
//动态文章 if($cfg_rewrite == 'Y') { return $GLOBALS["cfg_plus_dir"]."/view".$aid.'1.html'; }
改为:
//动态文章 if($cfg_rewrite == 'Y') { return "/archives/view".$aid.'1.html'; }
4. 修改TAG标签伪静态链接格式
打开/include/taglib/tag.lib.php
文件,找到以下代码:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
将其改为:
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";
5. 修改分页代码
打开/include/arc.taglist.class.php
文件,找到获取动态的分页列表GetPageListDM()
函数,进行以下修改:
修改获取上一页和下一页的链接:将以下代码:
$purl = $this>GetCurUrl(); $basename = basename($purl); $purl = str_replace($basename, '', $purl).urlencode($this>Tag);
改为:
$purl = str_replace('.php?tid=', '', $purl);
修改数字分页链接:将以下代码:
$listdd .= "<li><a href='".$purl."$j.html'>".$j."</a></li>rn";
改为:
$listdd .= "<li><a href='".$purl."$j.html'>".$j."</a></li>rn";
6. 设置伪静态规则
根据不同的服务器类型,设置相应的伪静态规则,以IIS7为例,设置以下规则:
<?xml version="1.0" encoding="UTF8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Rule1" stopProcessing="true"> <match url="^(.*)/RMB/list([09]+).html$" /> <action type="Rewrite" url="/plus/list.php?tid={R:2}" appendQueryString="false" /> </rule> <rule name="Rule2" stopProcessing="true"> <match url="^(.*)/RMB/list([09]+)([09]+)([09]+).html$" /> <action type="Rewrite" url="/plus/list.php?tid={R:2}&TotalResult={R:3}&PageNo={R:4}" appendQueryString="false" /> </rule> <rule name="Rule3" stopProcessing="true"> <match url="^(.*)/RMB/huilv([09]+)([09]+).html$" /> <action type="Rewrite" url="/plus/view.php?arcID={R:2}&pageno={R:3}" appendQueryString="false" /> </rule> <rule name="Rule4" stopProcessing="true"> <match url="^(.*)/(.*)_(.*)_([09]+).html$" /> <action type="Rewrite" url="/plus/list.php?tid={R:3}&from={R:2}&to={R:4}&num={R:5}" appendQueryString="false" /> </rule> <rule name="Rule5" stopProcessing="true"> <match url="^(.*)/tags.html$" /> <action type="Rewrite" url="/tags.php" appendQueryString="false" /> </rule> <rule name="Rule6" stopProcessing="true"> <match url="^(.*)/tags/(.*)(?:?.*)$" /> <action type="Rewrite" url="/tags.php?/$2" appendQueryString="false" /> </rule> <rule name="Rule7" stopProcessing="true"> <match url="^(.*)/tags/(.*)/([09])(?:?.*)$" /> <action type="Rewrite" url="/tags.php?/$2/$3" appendQueryString="false" /> </rule> <rule name="Rule8" stopProcessing="true"> <match url="^(.*)/tags/(.*)/([09])/([09])(?:?.*)$" /> <action type="Rewrite" url="/tags.php?/$2/$3/$4" appendQueryString="false" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
FAQs(常见问题解答)
问题1:为什么需要设置伪静态?
回答:伪静态是为了使动态页面看起来像静态页面,从而更好地被搜索引擎收录,提高网站的SEO效果,对于大量更新内容的站点,生成静态HTML文件会占用大量系统资源和人力,通过伪静态可以避免这些问题。
问题2:如何确认服务器或空间是否支持伪静态?
回答:如果是服务器,可以自行设置;如果是虚拟主机,需咨询IDC服务商客服,一般情况下,虚拟主机都支持伪静态。
问题3:修改源码时需要注意哪些事项?
回答:在进行源码修改时,一定要备份原文件,以防出错后无法恢复,建议逐步测试每一个修改步骤,确保每一步都能正常运行。
步骤 | 操作 | 说明 |
1. 登录DedeCMS 5.7后台管理 | 使用管理员账号登录到DedeCMS 5.7的后台管理系统。 | 必须是具有管理员权限的用户。 |
2. 进入系统设置 | 在后台管理页面,找到并点击“系统设置”菜单。 | 系统设置是管理网站全局配置的地方。 |
3. 打开伪静态设置 | 在系统设置菜单中,找到“伪静态设置”选项,并点击进入。 | 伪静态设置用于将动态URL转换为静态URL,提高搜索引擎优化效果。 |
4. 选择伪静态规则 | 在伪静态设置页面,选择适合您的伪静态规则,DedeCMS 5.7支持多种伪静态规则。 | 常见规则包括:.html、.asp、.php等。 |
5. 设置规则参数 | 根据所选规则,设置相应的参数,如:规则名称、变量名称、URL格式等。 | 参数设置需根据实际情况调整,确保URL规则正确。 |
6. 保存并启用 | 设置完成后,点击“保存”按钮,然后启用伪静态功能。 | 保存设置后,网站将按照新的URL规则显示。 |
7. 验证伪静态效果 | 在浏览器中访问您的网站,检查URL是否已转换为静态URL。 | 如果URL格式正确,则表示伪静态设置成功。 |
注意:在进行伪静态设置时,请确保您的服务器支持伪静态功能,并已安装相应的模块或插件,在修改URL规则之前,请备份网站数据,以防出现意外情况。
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/155124.html