phpcms 指定id范围 调用_PHPCMSv9显示指定栏目ID的热门文章

本文详细介绍了如何在PHPCMSv9中修改内容标签以显示指定栏目ID的热门文章。通过修改`content_tag.class.php`文件,添加条件判断,实现了根据栏目ID显示热门文章的功能,并提供了开关选项以选择显示当前栏目或指定多个栏目ID的排行。此外,还给出了标签调用示例,帮助开发者更灵活地运用这一功能。
摘要由CSDN通过智能技术生成

PHPCMSv9小技巧之三:排行栏显示指定栏目ID的热门文章

一、显示当前栏目的热门文章。

标签为:{pc:content action="hits" catid="$catid" num="10" order="views DESC" cache="3600"}修改文件:\phpcms\modules\content\classes\content_tag.class.php  (注意备份,主要修改里面的hits  标签函数)

查找:$this->db->table_name = $this->tablename; 在该代码上面添加:if($catid && $ids && $this->category[$catid]['child']) {

$catids_str = $this->category[$catid]['arrchildid'];

$pos = strpos($catids_str,',')+1;

$catids_str = substr($catids_str, $pos);

$sql .= " AND `catid` IN ($catids_str)";

}  elseif($catid && $ids && !$this->category[$catid]['child']) {

$sql .= " AND `catid` = '$catid'";

}

以上为hits标签的修改,加上栏目查询了。 更新全部缓存,完毕!

修改完后,还可添加参数来判断是否开启,更加灵活。

例如调用标签为:{pc:content action="hits" catid="$catid" num="10"dangqian="1" order="views DESC" cache="3600"}蓝色部分为添加的自定义参数,然后修改上面代码为:if($data['dangqian']){

《上面的代码》

}

这样就增加开关了,当hits标签带参数 dangqian="1" 时则为当前栏目的排行。catid="$catid"  这个需要赋值才能显示那个栏目的。

加个开关可以用在列表, 一个标签调用本栏目排行,一个标签调用总排行。

二、指定某几个栏目ID的热门文章:

可独立修改,也可跟第一种方法共存,但必须加上开关,而且dangqian="1"  跟 catids="7,8,9" 两个参数不能同时出现在一个hits标签。

修改文件一样,\phpcms\modules\content\classes\content_tag.class.php

查找:$this->db->table_name = $this->tablename;  在该代码上面添加:if(isset($data['catids'])){

$catids = $data['catids'];

$sql .= " AND catid IN ($catids) ";

}

调用标签为:{pc:content action="hits" catid="7" catids="7,8" num="10" order="views DESC" cache="3600"}

1. 红色部分为新增加的参数catids,多个栏目ID用半角逗号,隔开,如:catids="7,8,10,12,13,14"  不需要指定多栏目可以删除参数,不影响正常标签使用。

2. 蓝色部分必须,如果指定多栏目,则填其中一个栏目ID。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值