织梦cms系统TAG标签和分页伪静态设置教程_

作者 : 叶 落风前 本文共4213个字,预计阅读时间需要11分钟 发布时间: 2020-06-8 共77人阅读

现在好多CMS系统都有TAGS标签这项功能,知名的DEDECMS也有,但是它的标签功能很差,不利于seo优化,同时也有很多问题,比如:当前页不存在上一页时,链接为“-1”的问题,还有出现“系统无此标签,可能已经移除”的问题。

 

今天小编就教大家把标签伪静态(部分资料来源于网络),同时也修复了一些上述提到的BUG。

 

1.修改前台显示链接 

 

我们这里达到的效果就是使原来/tags.php?keywors更改为/tags/keywords.html。 

 

这里主要修改下调用的标签,在/include/taglib/tag.lib.php中,在87行找到 

 

1	$row['link'] = $cfg_cmsurl."/tags?".urlencode($row['keyword']); 

 

将其改为: 

 

1	$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword']).".html";

 

2.修改分页代码部分

 

我们需要修改include/arc.taglist.class.php,找到分页函数,将其替换为:

001	/**
002	* 获取动态的分页列表
003	*
004	* @access public
005	* @param int $list_len 列表宽度
006	* @param string $listitem 列表样式
007	* @return string
008	*/
009	function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")
010	{
011	$prepage="";
012	$nextpage="";
013	$prepagenum = $this->PageNo - 1;
014	$nextpagenum = $this->PageNo + 1;
015	if($list_len == "" || preg_match("/[^0-9]/", $list_len))
016	{
017	$list_len = 3;
018	}
019	$totalpage = $this->TotalPage;
020	if($totalpage <= 1 && $this->TotalResult > 0)
021	{
022	return "<span class=\"pageinfo\">共1页/".$this->TotalResult."条</span>";
023	}
024	if($this->TotalResult == 0)
025	{
026	return "<span class=\"pageinfo\">共0页/".$this->TotalResult."条</span>";
027	}
028	$maininfo = "<span class=\"pageinfo\">共{$totalpage}页/".$this->TotalResult."条</span>\r\n";
029	$purl = $this->GetCurUrl();
030	$basename = basename($purl);
031	$tmpname = explode('.', $basename);
032	
033	$purl = str_replace($basename, '', $purl).urlencode($this->Tag);
034	//var_dump($purl);exit;
035	//$purl .= "?/".urlencode($this->Tag);
036	
037	//获得上一页和下一页的链接
038	//if($this->PageNo != 1) 这是修正上一页为负数的问题
039	        if($this->PageNo != 1 && $this->PageNo != "")
040	{
041	$prepage.="<li><a href='".$purl."-$prepagenum'.html>上一页</a></li>\r\n";
042	$indexpage="<li><a href='".$purl."-1.html'>首页</a></li>\r\n";
043	}
044	else
045	{
046	$indexpage="<li><a>首页</a></li>\r\n";
047	}
048	if($this->PageNo!=$totalpage && $totalpage>1)
049	{
050	$nextpage.="<li><a href='".$purl."-$nextpagenum.html'>下一页</a></li>\r\n";
051	$endpage="<li><a href='".$purl."-$totalpage.html'>末页</a></li>\r\n";
052	}
053	else
054	{
055	$endpage="<li><a>末页</a></li>\r\n";
056	}
057	
058	//获得数字链接
059	$listdd="";
060	$total_list = $list_len * 2 + 1;
061	if($this->PageNo >= $total_list)
062	{
063	$j = $this->PageNo - $list_len;
064	$total_list = $this->PageNo + $list_len;
065	if($total_list > $totalpage)
066	{
067	$total_list = $totalpage;
068	}
069	}
070	else
071	{
072	$j=1;
073	if($total_list > $totalpage)
074	{
075	$total_list = $totalpage;
076	}
077	}
078	for($j; $j<=$total_list; $j++)
079	{
080	if($j == $this->PageNo)
081	{
082	$listdd.= "<li class=\"thisclass\"><a>$j</a></li>\r\n";
083	}
084	else
085	{
086	$listdd.="<li><a href='".$purl."-$j.html'>".$j."</a></li>\r\n";
087	}
088	}
089	$plist = '';
090	if(preg_match('/info/i', $listitem))
091	{
092	$plist .= $maininfo.' ';
093	}
094	if(preg_match('/index/i', $listitem))
095	{
096	$plist .= $indexpage.' ';
097	}
098	if(preg_match('/pre/i', $listitem))
099	{
100	$plist .= $prepage.' ';
101	}
102	if(preg_match('/pageno/i', $listitem))
103	{
104	$plist .= $listdd.' ';
105	}
106	if(preg_match('/next/i', $listitem))
107	{
108	$plist .= $nextpage.' ';
109	}
110	if(preg_match('/end/i', $listitem))
111	{
112	$plist .= $endpage.' ';
113	}
114	return $plist;
115	}
116	3.设置伪静态规则
117	
118	我们这里以iis7为例子,设置以下规则:
119	
120	Copy to ClipboardLiehuo.Net Codes引用的内容:[www.veryhuo.com]
121	<?xml version="1.0" encoding="UTF-8"?>
122	<configuration>
123	<system.webServer>
124	<rewrite>
125	<rules>
126	<rule name="weather1" stopProcessing="true">
127	<match url="tags/([^-]+)\.html$" ignoreCase="true" />
128	<conditions logicalGrouping="MatchAll">
129	<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
130	<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
131	</conditions>
132	<action type="Rewrite" url="/tags.php?/{R:1}" appendQueryString="false" />
133	</rule>
134	<rule name="weather2" stopProcessing="true">
135	<match url="tags/([^-]+)-([0-9]+)\.html$" ignoreCase="true" />
136	<conditions logicalGrouping="MatchAll">
137	<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
138	<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
139	</conditions>
140	<action type="Rewrite" url="/tags.php?/{R:1}/{R:2}" appendQueryString="false" />
141	</rule>
142	</rules>
143	</rewrite>
144	</system.webServer>
145	</configuration>

好了,至此就搞定了。

完整源码网ym0.cc,专业提供制网站源码,网站模板,源码下载,商业源码,游戏源码,找源码就到完整源码网 免责声明:本站所提供的资源来自于网络,版权争议与本站无关,版权归原创者所有! 仅限用于学习和研究目的,不得将上述内容资源用于商业或者非法用途. 否则,一切后果请用户自负。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源。如果上述内容资对您的版权或者利益造成损害,请提供相应的资质证明,我们将于3个工作日内予以删除。 本站不保证所提供下载的资源的准确性、安全性和完整性,源码仅供下载学习之用! 如用于商业或者非法用途,与本站无关,一切后果请用户自负! 本站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 如有侵权、不妥之处,请联系站长以便删除。 敬请谅解!侵权/投稿邮箱:157529987@qq.com!
完整源码网-ym0.cc » 织梦cms系统TAG标签和分页伪静态设置教程_

常见问题FAQ

开通VIP的好处?
VIP会员根据等级在相应的有效期内享有本站所有资源免费下载资源的权力,免费查看隐藏内容的权力,免费查看视频的权力,同时本站商品还会获得打折价格,并且拥有其他特殊的权力。
完整源码支持最新版本吗?
完整源码网支持永久更新!

发表评论