phpcms v9 php标签,让phpcms v9的tag标签支持中文URL

phpcmsV9程序,tag标签默认使用的是关键词转换后的urlencode路径格式,并且也不是伪静态,URL非常长,不利于SEO收录。

如官方演示站的URL:

http://v9.demo.phpcms.cn/index.php?m=content&c=tag&catid=10&tag=%C9%CF%BA%A3

其实上面URL就是查找关键词含有“上海”的文章,但URL太复杂了。

修改办法:

1、内容页模版路径:\phpcms\templates\default\content\show.html

找到

修改为:

2、找到文件:\phpcms\modules\content\tag.php

查找:

$page = $_GET['page'];

$datas = $infos = array();

$infos = $this->db->listinfo("`keywords` LIKE '%$tag%'",'id DESC',$page,20);

$total = $this->db->number;

if($total>0) {

$pages = $this->db->pages;

foreach($infos as $_v) {

if(strpos($_v['url'],'://')===false) $_v['url'] = $siteurl.$_v['url'];

$datas[] = $_v;

}

}

修改为:

$page = isset($_GET['page'])?$_GET['page']:1;

$datas = $infos = array();

$tag = iconv("utf-8","gb2312",$tag); //转编码

$infos = $this->db->listinfo("`keywords` LIKE '%$tag%'",'id DESC',$page,10);

$total = $this->db->number;

define('URLRULE',$siteurl.'/tags/'.$tag.'/'.$catid.'-{$page}.html');//为了解决v9伪静态后的翻页出现错误

if($total>0) {

$pages = pages($total,$page,10,URLRULE,array(),10) ;

foreach($infos as $_v) {

if(strpos($_v['url'],'://')===false) $_v['url'] = $siteurl.$_v['url'];

$datas[] = $_v;

}

}

3、.htaccess文件伪静态规则

RewriteRule ^tags/(.*)/([0-9]+)-([0-9]+).html$ index.php?m=content&c=tag&catid=$2&tag=$1&page=$3

这样就修改完成了,以后官方出补丁时候,小心别覆盖了。

以后tag标签的路径就是下面这样了:

http://你的域名/tags/上海/12-1.html

现在百度对中文URL支持的已经很好了,这样就可以收录更多,长尾词也更多

文章来源:www.051661.com,转载请保留链接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值