找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1616|回复: 0

[分享] 织梦cms增加php函数功能及在列表页获取当前栏目的文章数

[复制链接]
发表于 2018-2-28 08:47:59 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡
打开include/common.func.php,在其中任一行(<?与?>的中间任一行)中加上如下函数.
  1.   function dynamic_num($current_id){
  2. global $dsql;
  3. $t_num = $dsql->GetOne("select count(*) as num from `dede_archives` where typeid='$current_id'");
  4. if(is_array($t_num)){
  5.   return "本栏目共有".$t_num[num]."篇文章";
  6. }else{
  7.   return "本栏目共有0篇文章" ;
  8. }
  9. }
复制代码

在列表页中这样调用:{dede:type}[field:id function="dynamic_num(@me)" /]{/dede:type}
加入函数:
  1. //统计包括子栏目的文章数****
  2. function GetArtTotal($id){
  3.   
  4.     //*****统计栏目文章数
  5.   
  6.     //1.统计当前栏目文章数
  7.     $dsql = new DedeSql(false);
  8.     $row = $dsql->GetOne("select count(id) as ArtSum from dede_archives where typeid=$id; ");
  9.       
  10.     //2.统计子栏目文章数
  11.   $dsql = new DedeSql(false);
  12.   //$sql = TypeGetSunID($tid,$dsql);取得子栏目ID
  13.   $rowSun = $dsql->GetOne("Select count(t.ID) as dd  from dede_archives t left join dede_arctype u1 on u1.id=t.typeid
  14.   where (u1.reID=$id)  ");
  15.      
  16.       
  17.     //3. 1+2得出总文章数
  18.   return $row['ArtSum']+$rowSun['dd'];
  19. }
  20. //******统计包括子栏目的文章数
复制代码

调用方法:
{dede:channel type='self' row='100'? }[field:typename/]([field:id function=GetArtTotal(@me)/]){/dede:channel}
<div class="cate">
    <h2>当前栏目</>h2>
     <p>{dede:channel type='son' currentstyle="<a class='hcate' href='~typelink~'>~typename~</>a>"}<a href="[field:typeurl/]">[field:typename/][field:id function="dynamic_num(@me)" /]</a>{/dede:channel}</p>
</div>


发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-11-22 07:18 , Processed in 0.039670 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表