Home  >  Article  >  CMS Tutorial  >  How dedecms implements pseudo-static tag tags

How dedecms implements pseudo-static tag tags

藏色散人
藏色散人Original
2019-12-13 10:09:142263browse

How dedecms implements pseudo-static tag tags

dedecms如何实现tag标签伪静态?

dedecms的tag标签是一个很好管理关键词的功能,通过tag标签可以找到相关的关键词内容。但是dedecms的tag标签系统默认是//www.xxx.net/tags.php?/tag标签/如下图。不利于SEO优化。那么如何将TAGS静态化呢?(即改成//www.xxx.net/tags/1.html)。

推荐学习:织梦cms 

这里主要是通过修改调用的标签进行伪静态。

How dedecms implements pseudo-static tag tags

1、在dedecms程序目录下找到tags.php。打开找到$PageNo=1到exit();的代码(如下图)。把这些代码替换成如下代码:

How dedecms implements pseudo-static tag tags

//tag伪静态
$tagid = (isset($tagid) && is_numeric($tagid)) ? $tagid : 0;
$PageNo = (isset($PageNo) && is_numeric($PageNo)) ? $PageNo : 1;
if ($tagid =="0") {
$dlist = new TagList($tag, 'tag.htm');
$dlist->Display();}
else{$row = $dsql->GetOne("SELECT tag FROM `tagindex` WHERE id ={$tagid}");
if (!is_array($row)) {ShowMsg('系统无此tag', '-1');
exit();}
$tag = FilterSearch($row['tag']);
$dlist = new TagList($tag, 'taglist.htm');
$dlist->Display();}
exit();

2、TAG调用标签。打开include/taglib/tag.lib.php文件找到$row['link'] =$cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";代码。将它替换成$row['link'] = "/tags/{$row['id']}.html";(注意符号都是英文,不是中文。不然查找不到,修改不成功)

3、修改分页代码。同样打开include/arc.taglist.class.php,找到//获得上一页和下一页的链接。将//获得上一页和下一页的链接  至  //获得数字链接之间的分页函数替换为如下函数:

if($this->PageNo != 1)
{
$prepage.="<li><a href=&#39;".$purl."/$prepagenum/&#39;>上一页</a></li>\r\n";
$indexpage="<li><a href=&#39;".$purl."/1/&#39;>首页</a></li>\r\n";
}
else
{
$indexpage="<li><a>首页</a></li>\r\n";
}
if($this->PageNo!=$totalpage && $totalpage>1)
{
$nextpage.="<li><a href=&#39;".$purl."/$nextpagenum/&#39;>下一页</a></li>\r
\n";
$endpage="<li><a href=&#39;".$purl."/$totalpage/&#39;>末页</a></li>\r\n";
}
else
{
$endpage="<li><a>末页</a></li>\r\n";  }

4、设置伪静态规则。新建一个txt文本,在文本里添加如下伪静态规则。然后另存为.htaccess上传到网站根目录即可(如果已有伪静态文件.htaccess,那么不要覆盖.htaccess。直接打开在里面添加如下规则保存即可。)

RewriteEngine on
RewriteBase /
RewriteRule ^tags/([0-9]+)_([0-9]+).html$ tags.php?tagid=$1&PageNo=$2 [L]
RewriteRule ^tags/([0-9]+).html$ tags.php?tagid=$1 [L]

5、最后到dedecms后台更新一下,至此已完成所有的设置。可以看http://127.0.0.1/tags/1.html如下图的伪静态效果。

How dedecms implements pseudo-static tag tags

The above is the detailed content of How dedecms implements pseudo-static tag tags. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn