二开教程 Development

提供PHPCMS常用模块的二次开发,改造,升级都修改过程代码

Phpcms V9 栏目列表调用文章点击量及评论数量方法

 admin  2023-06-27 15:36:17

很多朋友在用Phpcms做站时,具体需要在列表页、首页调用文章列表调用文章的点击量和评论排行,那么怎么才能做到在Phpcms v9首页、频道页、列表页、推荐位等页面获取文章浏览量和评论统计呢?

原因起于phpcms官方默认的模版没有在列表页面调用过文章点击量和评论数量,而且文章的内页调用浏览量hit的方法不适用于列表页。

下面是具体的代码,分享在此,具体在列表页调用文章点击量的演示在这里:http://www.pweb123.comt/。

一、Phpcms列表页面取得文章点击量及评论数量:
 

  1. {pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page" moreinfo="1"} {loop $data $r} {php $db = pc_base::load_model('hits_model'); $_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$r[id])); $views = $_r[views]; } {php $comment_tag = pc_base::load_app_class("comment_tag""comment"); $comment_total = $comment_tag->count(array('commentid'=>'content_'.$catid.'-'.$r[id].'-'.$modelid));} <li><span class="rt">{date('Y-m-d H:i:s',$r[inputtime])}</span>·<a href="{$r[url]}" target="_blank"{title_style($r[style])}>{$r[title]}</a> 点击:{$views} 评论数:{if $comment_total}{$comment_total}{else}0{/if}</li>{/loop} {$pages} {/pc} 

二、Phpcms频道页面取得文章点击量及评论数量:
 

  1. {pc:content action="lists" catid="$v[catid]" num="5" order="id DESC"} {loop $data $v} {php $db = pc_base::load_model('hits_model'); $_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$v[id])); $views = $_r[views]; } {php $comment_tag = pc_base::load_app_class("comment_tag""comment"); $comment_total = $comment_tag->count(array('commentid'=>'content_'.$v[catid].'-'.$v[id].'-'.$modelid));} <li><a href="{$v[url]}" target="_blank"{title_style($v[style])}>{$v[title]}</a>点击: {$views}评论数:{if $comment_total}{$comment_total}{else}0{/if}</li> {/loop} {/pc} 

三、Phpcms首页面取得文章点击量及评论数量:
 

  1. {pc:content action="lists" catid="$r[catid]" num="5" order="id DESC" return="info"} {php $categorys = getcache('category_content_'.$siteid,'commons');} <ul class="list lh24 f14"
  2.  {loop $info $v} 
  3.  {php $category = $categorys[$v[catid]];}  
  4. {php $modelid = $category['modelid'];}  
  5. {php $db = pc_base::load_model('hits_model'); $_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$v[id])); $views = $_r[views]; }  
  6. {php $comment_tag = pc_base::load_app_class("comment_tag""comment"); $comment_total = $comment_tag->count(array('commentid'=>'content_'.$v[catid].'-'.$v[id].'-'.$modelid));}  
  7. <li>· 
  8. <a href="{$v['url']}" target="_blank" title="{$v['title']}"{title_style($v[style])}>{str_cut($v['title'],40)}</a>  
  9. 点击:{$views} 评论:{if $comment_total}{$comment_total}{else}0{/if
  10. </li>  
  11. {/loop}  
  12. </ul> 
  13. {/pc} 

四、Phpcms推荐位取得文章点击量及评论数量:

  1. {pc:content action="position" posid="2" order="listorder DESC" num="4"} {php $categorys = getcache('category_content_'.$siteid,'commons');} 
  2. {loop $data $r} 
  3. {php $category = $categorys[$r[catid]];} 
  4. {php $modelid = $category['modelid'];} 
  5. {php $db = pc_base::load_model('hits_model'); $_r = $db->get_one(array('hitsid'=>'c-'.$modelid.'-'.$r[id])); $views = $_r[views]; } 
  6. {php $comment_tag = pc_base::load_app_class("comment_tag""comment"); $comment_total = $comment_tag->count(array('commentid'=>'content_'.$r[catid].'-'.$r[id].'-'.$modelid));} 
  7. <h4 class="blue"><a href="{$r[url]}" title="{$r[title]}">{str_cut($r[title],36,'')}</a> 
  8. 点击:{$views} 评论:{if $comment_total}{$comment_total}{else}0{/if}</h4> 
  9. <p>{if $n==1}<img src="{thumb($r[thumb],90,60)}" width="90" height="60"/>{/if}{str_cut($r[description],112)}</p> 
  10. <div class="bk20 hr"><hr /></div> 
  11. {/loop} 
  12. {/pc} 

20130228更新:

要多谢来自QQ上的网友Huang,他在看了上面的说明后,觉得在统计页面还需要加上统计的JS,这是对的。需要在show.html、show_picture.html等模板文件底部加入以下代码:

  1. <script language="JavaScript" src="{APP_PATH}api.php?op=count&id={$id}&modelid={$modelid}"></script> 

这是官方默认模版里边自带的,别忘了加上这个!

本文《Phpcms V9 栏目列表调用文章点击量及评论数量方法》发布于PHPCMS管理系统文章,作者:admin,如若转载,请注明出处:https://www.phpcms.vip/help/doc/88.html,否则禁止转载,谢谢配合!