php tag模块,phpcms TAG伪静态

看了网上很多的关于phpcms tag伪静态设置的文章,都是做成http://host/**.html的形式。个人还是比较喜欢类似http://host/tag/**的样式。TAG模块伪静态设置方法如下:

1、在后头添加添加url规则

在后台-

这一行上面添加以下代码:

$urlrules = getcache('urlrules','commons');

$urlrule = $urlrules[31];//调用url规则

然后再把

$infos = $keyword_data_db->listinfo($where, '`id` DESC', $page, $pagesize);

改成

$infos = $keyword_data_db->listinfo($where, '`id` DESC', $page, $pagesize,'','9',$urlrule,Array('tag'=

目的就是往查询语句里面添加前面设置的url规则。

3、修改全站的内容页模板,如果有多个不同的模型栏目使用了不同的内容页模板也需要全部修改。我的网站里面就有好多不同的内容模板,改的时候就需要全部改掉。

打开phpcms\templates\default\content\show.html,找到:

{APP_PATH}index.php?m=content&c=tag&a=lists&tag={urlencode($keyword)}

改成

/tag/{urlencode($keyword)}

修改分页标签,为的是标签搜索出来的列表url里面不出现0,

打开phpcms\templates\default\content\tag_list.html,把分页标签

{$pages}

改成

{str_replace("0","1",$pages)}

4、在.htaccess文件里加入URL规则

在网站的根目录的.htaccess文件(没有的自己建)加入以下URL规则

rewrite ^/tag/(.*)_([0-9]+) /index.php?m=content&c=tag&a=lists&tag=$1&page=$2;

rewrite ^/tag/(.*) /index.php?m=content&c=tag&a=lists&tag=$1&page=$2;

如果是单独的服务器请修改相应的配置文件。

最后显示出来的URL样式如下:http://www.xinchaoyue.com/tag/hp

遇到的问题:

点击tag关键词之后tag页面收到的关键词不一样,在网上查了一下很多人说是编码的问题。测试转换编码无法解决问题。最后通过去掉$infos = $keyword_data_db-

更多tag实例演示请到www.xinchaoyue.com查看。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值