服务器之家:专注于服务器技术及软件下载分享
分类导航

DEDECMS|帝国CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|苹果CMS|极致CMS|CMS系统|

服务器之家 - 建站程序 - PHPCMS - phpcms V9修改lists标签(实现调用文章所属栏目及点击数)

phpcms V9修改lists标签(实现调用文章所属栏目及点击数)

2019-10-11 13:17phpcms教程网 PHPCMS

pc程序默认首页是无法调用出文章的点击数,而调用文章所属的栏目名称也很复杂,需要先使用php语句进行数据缓存后才能调用。其实我们可以一步到位,自己添加函数来实现在首页/频道页/列表页调用文章点击数及文章所属栏目名

实现效果步骤如下:

①打开\phpcms\modules\content\classes\content_tag.class.php文件;
②搜索“列表页标签”,即lists标签函数,应该在文件的56行左右,把lists标签函数的整段调用代码修改如下:

 

复制代码

代码如下:


/** 
* 列表页标签 
* @param $data 
*/
publicfunction lists($data) { 
$catid = intval($data['catid']); 
if(!$this->set_modelid($catid)) return false; 
if(isset($data['where'])) { 
$sql = $data['where']; 
} else { 
$thumb = intval($data['thumb']) ? " AND thumb != ''" : ''; 
if($this->category[$catid]['child']) { 
$catids_str = $this->category[$catid]['arrchildid']; 
$pos = strpos($catids_str,',')+1; 
$catids_str = substr($catids_str, $pos); 
$sql = "status=99 AND catid IN ($catids_str)".$thumb; 
} else { 
$sql = "status=99 AND catid='$catid'".$thumb; 


$order = $data['order']; 
$return = $this->db->select($sql, '*', $data['limit'], $order, '', 'id'); 
//二次开发============================================= 
foreach($returnas &$r){ 
$h_md=pc_base::load_model('hits_model'); 
$get_db=$h_md->get_one(array('hitsid'=>"c-".$this->db->modelid."-".$r[id])); 
$r['views']=$get_db[views]; 
$c_md=pc_base::load_model('category_model'); 
$c_data = $c_md->get_one(array('catid'=>$r[catid])); 
$r['catname']=$c_data[catname]; 

//原文无此段落 原因:列表获得浏览次数============================================= 
/* 2013年4月 
*使用方法 
* {loop $data $r} 
* {$r[catname]}-{$r[title]}-{$r[views]} 
* {/loop} 
*/
//调用副表的数据 
if (isset($data['moreinfo']) && intval($data['moreinfo']) == 1) { 
$ids = array(); 
foreach ($returnas$v) { 
if (isset($v['id']) && !emptyempty($v['id'])) { 
$ids[] = $v['id']; 
} else { 
continue; 


if (!emptyempty($ids)) { 
$this->db->table_name = $this->db->table_name.'_data'; 
$ids = implode('\',\'', $ids); 
$r = $this->db->select("`id` IN ('$ids')", '*', '', '', '', 'id'); 
if (!emptyempty($r)) { 
foreach ($ras$k=>$v) { 
if (isset($return[$k])) $return[$k] = array_merge($v, $return[$k]); 




return$return; 

 

上面的函数代码里已经标注了新添加标签的函数代码,即23行至38行;

③前端页面模板调用代码的方法(示例)已经在上述函数代码里标明,我再重新说一下:

 

复制代码

代码如下:


{loop $data$r}
{$r[catname]}-{$r[title]}-{$r[views]}
{/loop}

延伸 · 阅读

精彩推荐
  • PHPCMSphpcms v9去除盛大连接 关闭盛大通行证的修改方法

    phpcms v9去除盛大连接 关闭盛大通行证的修改方法

    phpcms v9默认开启了盛大连接,直接使用盛大通告证登录网站,但是盛大通告证的覆盖面有限,比不上QQ或者支付宝,甚至不如人人网、豆瓣之类,于是有朋...

    phpcms教程网5562019-10-13
  • PHPCMSphpcms常见问题解答

    phpcms常见问题解答

    1.为什么phpcms首页幻灯片怎么显示不出来? 答:需要设置文章的 标题图片 如果设置标题图片,则可以在首页以及栏目页以图片方式链接到文章。 2.自定义...

    phpcms教程网2712019-10-07
  • PHPCMSphpcms V9实现QQ登陆OAuth2.0提供下载

    phpcms V9实现QQ登陆OAuth2.0提供下载

    phpcmsV9使用的QQ登陆依然是OAuth1.0,但现在腾讯已经不审核使用OAuth1.0的网站了。这对于使用pc的站长来讲是一个无比巨大的坑。经过对phpcms论坛的一位同学做...

    phpcms教程网3402019-10-11
  • PHPCMSphpcms怎么上传歌曲文件

    phpcms怎么上传歌曲文件

    phpcms上传歌曲文件的方法:首先依次打开“设置-站点管理-修改”;然后在附件配置的“允许上传附件类型”中添加自己需要的类型;接着打开“添加模型...

    未知1522023-05-07
  • PHPCMSphpcms的栏目缓存无限级罗列展示处理代码(亲测)

    phpcms的栏目缓存无限级罗列展示处理代码(亲测)

    本文为大家详细介绍下phpcms的栏目缓存无限级罗列展示是怎么实现的,粗测试了一下,效果还不错,有需求的朋友可以参考下哈,希望对大家有所帮助 ...

    phpcms教程网8642019-10-11
  • PHPCMS数据库导入成功,phpcms打不开

    数据库导入成功,phpcms打不开

    问:,数据库导入成功,phpcms打不开 答:您好,查看此域名是解析到 云主机 上的,报错来看应该是您导入的数据库不完整,还差session的表,请您核实 若需...

    未知1822023-05-07
  • PHPCMSphpcms转移到虚拟空间的详细步骤

    phpcms转移到虚拟空间的详细步骤

    本文向大家介绍phpcms从本地转移到虚拟空间的步骤,转移过程需要改动一部分文件,这里提供如何改动这些文件,以保证你可以顺利转移PHPCMS ...

    phpcms教程网4232019-10-13
  • PHPCMS如何设置PhpCms广告模块管理 PhpCms广告模块管理图文教程

    如何设置PhpCms广告模块管理 PhpCms广告模块管理图文教程

    PhpCms广告模块管理图文教程,下面给大家总结一下 ...

    PHPCMS教程网3782019-10-14