为了seo,我们要把tag页面伪静态,下面就是伪静态的方法
1、在后台->扩展->url规则里添加一个新的规则用于评论模块,如下面所示:
{$tag}_{$catid}_{$page}.html
添加完成后记住前面的id号,比如32。
2、打开phpcms/modules/content/tag.php文件,找到:
$total = $this->db->number;
这一行往上面添加以下代码:
$siteid = $this->categorys[$catid]['siteid']; $siteurl = site; $this->db->set_model($modelid); $page = $_get['page']; $urlrules = getcache('urlrules','commons'); $urlrule = $urlrules[32];//调用url规则 $datas = $infos = array(); $infos = $this->db->listinfo("`keywords` like '%$tag%'",'id desc',$page,25,'','9',$urlrule,array('catid'=>$catid,'tag'=>urlencode($tag)));
3、修改模板,打开phpcmstemplatesdefaultcontentshow.html,找到:
{app_path}index.php?m=content&c=tag&catid={$catid}&tag={urlencode($keyword)}
改成:
{app_path}{urlencode($keyword)}_{$catid}_1.html
打开phpcmstemplatesdefaultcontenttag.html,把分页标签:
{$pages}
改成:
{str_replace("_0.html","_1.html",$pages)}
4、在.htaccess文件里加入以下代码:
rewriterule ^(.*)_([0-9] )_([0-9] ).html index.php?m=content&c=tag&catid=$2&tag=$1&page=$3
最后显示出来的url样式如下:
/关键词_6_1.html
小结:其实以上的修改都是在listinfo支持伪静态规则的基础上来修改的,熟练使用listinfo,就能在phpcms的任何页面实现伪静态分页了