PHPCMS V9 按浏览次数排行调用文章

  1. 云栖社区>
  2. 博客>
  3. 正文

PHPCMS V9 按浏览次数排行调用文章

科技小能手 2017-11-12 01:51:00 浏览507
展开阅读全文

频道总排行调用方法

1
2
3
4
5
6
7
8
9
10
<div class="box">
    <h5 class="title-2">频道总排行</h5>
    {pc:get sql="select a.id,a.title,a.url,a.catid,b.hitsid,b.views from v9_news a left join v9_hits b on a.id=substring(b.hitsid,5) where a.catid in ($arrchildid) order by b.views desc" num="10" cache="3600"}
    <ul class="content digg">
        {loop $data $r}
            <li> <a href="{$r[url]}" title="{$r[title]}"  target="_blank">{str_cut($r[title],36,'...')}</a></li>
        {/loop}
    </ul>
    {/pc}
</div>

频道月排行调用方法

1
2
3
4
5
6
7
8
9
10
<div class="box">
    <h5 class="title-2">频道总排行</h5>
    {pc:get sql="select a.id,a.title,a.url,a.catid,b.hitsid,b.views from v9_news a left join v9_hits b on a.id=substring(b.hitsid,5) where a.catid in ($arrchildid) order by b.views desc" num="10" cache="3600"}
    <ul class="content digg">
        {loop $data $r}
            <li> <a href="{$r[url]}" title="{$r[title]}"  target="_blank">{str_cut($r[title],36,'...')}</a></li>
        {/loop}
    </ul>
    {/pc}
</div>

调用全站所有文章排行的方法:

1
2
3
4
5
6
7
8
9
<div class="idxTopApps contents">
<ul class="indexIcns">
{pc:get sql="SELECT a.id,a.url,a.thumb,a.status,b.hitsid,b.views FROM v9_download a, v9_hits b WHERE a.status=99 and a.id=substring(b.hitsid,5) ORDER BY b.views DESC" num="6"}
{loop $data $r}
<li><a href="{$r['url']}"><img src="{$r['thumb']}" /></a></li>
{/loop}
{/pc}
</ul>
</div>

可以看到“substring(b.hitsid,5)”是截取hitsid字段,从左往右数第5个字符串,即“c-2-5”从左往右数,1个“c”,1个“2”,2个“-”,第5个字符就是“5”,截取后只剩下了第2个“-”后的id,到达了最终提取id的目的。当然,其中我还加入了另一个条件“status=99”,这个表示已经审核通过的文章,这个可有可无。



本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1722953

网友评论

登录后评论
0/500
评论
科技小能手
+ 关注