如何在DedeCMS中查询并显示当前栏目的内容数量?

在DedeCMS中,要调用当前栏目下内容的数量,可以使用以下标签:,,“html,{dede:field name='total'/},“,,将上述代码插入到列表页模板的相应位置,即可显示当前栏目下内容的数量。

在DedeCMS中,调用当前栏目下内容数量的方法主要有以下几种:

如何在DedeCMS中查询并显示当前栏目的内容数量?

1、方法一

文件位置:include/common.func.php 或 include/extend.func.php。

代码添加:在文件末尾添加如下函数代码。

     function getTotalArcByTid($tid, $level=TRUE) {
         global $dsql;
         $level==TRUE && $tid = GetSonTypeID($tid);
         $sql = "SELECT count(id) as total fromdede_archives where typeid in($tid)";
         $result = $dsql>GetOne($sql);
         return $result['total'];
     }
     function GetSonTypeID($tid){
         global $dsql;
         $dsql>SetQuery("Select id Fromdede_arctype where reid in($tid) And ishidden<>1 order by sortrank");
         $dsql>Execute($tid);
         $typeid = '';
         while($row=$dsql>GetObject($tid)){
             $typeid .= "{$row>id},";
             $typeid .= GetSonTypeID($row>id);
         }
         return trim($typeid, ',');
     }

模板调用:在需要显示文章数量的模板文件中使用如下标签。

     {dede:field name='typeid' function="getTotalArcByTid(@me)"/}

2、方法二

文件位置:include/common.func.php 或 include/extend.func.php。

代码添加:在文件末尾添加如下函数代码。

     function GetTotalArc($tid){ 
         global $dsql; 
         $sql = GetSonIds($tid); 
         $row = $dsql>GetOne("Select count(id) as dd From dede_archives where typeid in({$sql})");
         return $row['dd']; 
     }

模板调用:在需要显示文章数量的模板文件中使用如下标签。

     [field:ID function='GetTotalArc(@me)'/]

3、方法三

文件位置:include/common.func.php 或 include/extend.func.php。

代码添加:在文件末尾添加如下函数代码。

     function getTotalArcByTid($tid, $level=TRUE) {
         global $dsql;
         $level==TRUE && $tid = GetSonTypeID($tid);
         $sql = "SELECT count(id) as total fromdede_archives where typeid in($tid)";
         $result = $dsql>GetOne($sql);
         return $result['total'];
     }
     function GetSonTypeID($tid){
         global $dsql;
         $dsql>SetQuery("Select id Fromdede_arctype where reid in($tid) And ishidden<>1 order by sortrank");
         $dsql>Execute($tid);
         $typeid = '';
         while($row=$dsql>GetObject($tid)) {
             $typeid .= "{$row>id},";
             $typeid .= GetSonTypeID($row>id);
         }
         return trim($typeid, ',');
     }

模板调用:在需要显示文章数量的模板文件中使用如下标签。

     {dede:field name='typeid' function="getTotalArcByTid(@me)"/}

表格对比

方法 文件位置 函数名称 函数代码 模板调用
方法一 include/common.func.php 或 include/extend.func.php getTotalArcByTid、GetSonTypeID [见上文] {dede:field name=’typeid’ function=”getTotalArcByTid(@me)”/}
方法二 include/common.func.php 或 include/extend.func.php GetTotalArc [见上文] [field:ID function=’GetTotalArc(@me)’/]
方法三 include/common.func.php 或 include/extend.func.php getTotalArcByTid、GetSonTypeID [见上文] {dede:field name=’typeid’ function=”getTotalArcByTid(@me)”/}

相关问答FAQs

1、如何在主页模板中显示每个栏目的文章总数?:在主页模板中,可以使用如下标签来显示每个栏目的文章总数:{dede:channel type=’top’ row=’8′ currentstyle="<li class=’thisclass’><a href=’~typelink~’>~typename~ ({dede:field name=’typeid’ function="getTotalArcByTid(@me)"/})</a></li>"}/dede:channel}。

2、如何获取指定栏目及其所有子栏目的文章总数?:要获取指定栏目及其所有子栏目的文章总数,可以在模板中调用自定义函数getTotalArcByTid,具体代码为:{dede:field name=’typeid’ function="getTotalArcByTid(@me)"/}。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1227780.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-20 16:45
下一篇 2024-10-20 16:53

相关推荐

  • win11系统gpedit.msc找不到文件的两种解决方法

    Windows 11系统中,若遇到”gpedit.msc找不到文件”的问题,有两种主要的解决方法。可以通过安装组策略编辑器来解决;如果是家庭版用户,可以尝试升级到专业版以获得该功能。这两种方法都能有效地解决无法找到gpedit.msc文件的问题。

    2024-07-09
    02.0K
  • 拼多多如何查看消费总额-拼多多查看消费总额的方法

    拼多多是一款非常受欢迎的购物平台,用户可以通过该平台购买各种商品,为了方便用户了解自己的消费情况,拼多多提供了查看消费总额的功能,下面是拼多多查看消费总额的方法:1、打开拼多多APP确保您已经在手机上安装了拼多多APP,如果没有安装,请前往应用商店搜索并下载拼多多APP。2、登录拼多多账号在拼多多APP首页,点……

    2024-03-31
    02.0K
  • 为什么织梦DEDECMS后台的档案列表会显示为空白或无法加载文章?

    织梦DEDECMS后台所有档案列表显示空白或显示不了文章,可能是由于数据库连接问题、文件权限设置不当、缓存问题或者模板文件损坏等原因造成的。可以尝试以下解决方法:,,1. 检查数据库连接:确保配置文件中的数据库连接信息正确无误,包括主机名、用户名、密码和数据库名。如果有任何错误,请更正并重新连接。,,2. 检查文件权限:确保DEDECMS的安装目录及其子目录具有适当的读写权限。需要将目录权限设置为755,文件权限设置为644。可以使用FTP工具或服务器控制面板来修改权限。,,3. 清除缓存:尝试清除DEDECMS的缓存文件。在后台管理界面中,找到“系统”菜单下的“缓存管理”选项,点击“清理缓存”按钮。这将清除所有缓存文件,并可能解决显示问题。,,4. 检查模板文件:如果只有特定模板的文章无法显示,可能是由于模板文件损坏或配置错误导致的。可以尝试重新上传正确的模板文件,或者检查模板文件中的代码是否正确。,,如果以上方法都无法解决问题,建议查阅DEDECMS的官方文档或寻求社区支持,以获取更详细的故障排除指导。

    2024-10-08
    05
  • 雷游优化器有用吗

    雷游优化器对于提高游戏性能和减少卡顿有一定帮助,但效果因个人设备和游戏类型而异。

    2024-05-03
    0207

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入