PHPCMS V9评论模块伪静态与TAG模块伪静态设置

来源:www.13sc.com | 游客上传 | 382 次浏览 | 0 条评论

搜索: 评论 伪静态 TAG 

本文为大家介绍下PHPCMS V9评论模块伪静态与TAG模块伪静态设置,感兴趣的朋友可以参考下哈,希望对你学习PHPCMS V9有所帮助

一、评论模块伪静态设置
1、首先在后台->扩展->url规则里添加一个新的规则用于评论模块,如下面所示:
{$commentid}_{$page}.html添加完成后记住前面的id号,比如31。
2、本来PC标签支持urlrule呢,后来不支持了,只好改代码了,于是打开文件phpcms/modules/comment/index.php找到:

复制代码
代码如下:

include template("!!comment"!!, "!!list"!!);

在它上面添加几行用于读取urlrule和从评论表中调用评论数据,对了,评论表是带分表的。

复制代码
代码如下:

$page = intval($_GET["!!page"!!]);
$page = max($page,1);
$urlrules = getcache("!!urlrules"!!,"!!commons"!!);
$urlrule = $urlrules[31];//调用url规则
$pagesize = 10; //分页大小
$comment_db = pc_base::load_model("!!comment_model"!!);
$comment_data_db = pc_base::load_model("!!comment_data_model"!!);
$comment = $comment_db->get_one(array("!!commentid"!!=>$commentid, "!!siteid"!!=>$siteid));
if ($comment){
$comment_data_db->table_name($comment["!!tableid"!!]);
$comment_info = $comment_data_db->listinfo(Array("!!commentid"!!=>$commentid,"!!status"!!=>1) , "!!id desc"!!, $page ,$pagesize,"!!"!!,"!!10"!!,$urlrule,Array("!!commentid"!!=>$commentid));
$pages = $comment_data_db->pages;
}

3、下面就就改模版了,改模版其实就是改一下那个pc标签,只留下循环那里就可以了, 就是把那个调用评论数据的标签改改, 删掉这个文件phpcmstemplatesdefaultcommentlist.html里的:

复制代码
代码如下:

{pc:comment action="lists" commentid="$commentid" siteid="$siteid" page="$_GET[page]" hot="$hot" num="20"}

和它对应的那个:

复制代码
代码如下:

{/pc}

然后把循环语句:

复制代码
代码如下:

{loop $data $r}

改成:

复制代码
代码如下:

{loop $comment_info $r}

把分页标签:

复制代码
代码如下:

{$pages}

改成:

复制代码
代码如下:

{str_replace("_0.html","_1.html",$pages)}

4、最后在.htaccess文件里加入以下代码:

复制代码
代码如下:

RewriteRule ^content_(.*)_([0-9]+).html index.php?m=comment&c=index&a=init&commentid=content_$1&page=$2

ok,现在就大功告成了,显示出来的网址是:
/content_9-1-1_2.html
二、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 = siteurl($siteid);
$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的任何页面实现伪静态分页了。

标签: 评论 伪静态 TAG

最热-phpcms

phpcms v9添加热门搜索关键词的方法

PHPCMS V9任意短消息阅读BUG分析与解决方法

PHPcms建站系统-个人建站必不可少的工具

phpcms v9站内外搜索代码分享

Phpcms V9 调用全站最新文章的方法

PHPCMS2008 SP4 心情排行指数不显示的解决办法

PHPCMS 2008 SP3 模板语法规则整理

mysql更改密码后 配置文件应该改的东西 PHPCMS2008&V9

关于phpcms2008 内部递增标变量 $n 使用时的注意事项

PHPCMS V9采集地址中有相对路径的问题及解决方法

FTP二进制形式上传phpcms程序

phpcms2008下的自定义url规则教程

Copyright 2009-2013 13sc.com All Rights Reserved.