云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何在DedeCMS中为网站栏目添加文章数量统计功能?

要在dede网站中加入栏目文章数统计功能,你需要在相应的模板文件中添加统计代码。具体步骤如下:,,1. 打开dede网站的后台管理界面,找到你想要添加文章数统计的栏目;,2. 点击该栏目,进入栏目设置页面;,3. 在栏目设置页面中找到“模板管理”选项,点击进入;,4. 在模板管理页面中找到你想要添加统计代码的模板文件,点击编辑;,5. 在编辑页面中找到你想要插入统计代码的位置,将以下代码插入到相应位置:,,“php,,“,,6. 保存修改后的模板文件,然后刷新网站前台页面,你应该能看到文章数统计已经成功添加到相应栏目中。

DedeCMS中实现栏目文章数统计功能,可以通过多种方法来实现,以下是两种常用的方法及其具体步骤:

方法一:通过include/common.func.php文件添加函数

1、涉及文件include/common.func.php

2、代码实现

include/common.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'];
   }

3、调用方法

在模板文件中,可以使用以下代码来显示每个栏目的文章总数:

     {dede:type}[field:ID function='GetTotalArc(@me)'/]{/dede:type}篇

或者在栏目名称后面显示:

     {dede:type}[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]{/dede:type}

方法二:通过include/inc_arcpart_view.php文件修改函数

1、涉及文件include/inc_arcpart_view.php

2、代码实现

找到ParseTemplet()函数,并在其中添加以下代码:

     if(!is_array($this>dtp>CTags)) return "";
     foreach($this>dtp>CTags as $tagid=>$ctag) {
         $tagname = $ctag>GetName();
         //countclass 统计栏目文章数量
         if( $tagname == "countclass" ) {
             $tid = $ctag>GetAtt("typeid");
             $row = $this>dsql>GetOne("Select count(ID) as dd From dede_archives where typeid='$tid' and arcrank<>1");
             $this>dtp>Assign($tagid,$row['dd']);
         }
     }

3、调用方法

在模板文件中,可以使用以下代码来显示每个栏目的文章总数:

     {dede:countclass typeid=栏目ID/}
     {dede:countclass typeid='2'/}

表格归纳

方法 涉及文件 代码实现 调用方法
方法一 include/common.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']; } {dede:type}[field:ID function='GetTotalArc(@me)'/]{/dede:type}篇{dede:type}[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]{/dede:type}
方法二 include/inc_arcpart_view.php 修改ParseTemplet()函数,添加统计代码段 {dede:countclass typeid=栏目ID/}

FAQs

问题1:如何在首页模板上显示每个栏目的文章总数?

答:可以在首页模板中使用如下代码来显示每个栏目的文章总数:

{dede:channel type='top' typeid=''} <a href='[field:typelink /]'>[field:typename/]</a> ([field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]) {/dede:channel}

这段代码会在每个栏目名称后面显示其包含的文章总数。

问题2:如何在不同的页面模板中调用这个统计功能?

答:可以在任何需要显示栏目文章总数的模板中插入相应的代码。

在列表页模板中,使用runphp='yes'参数:

  {dede:field.typeid runphp='yes'} global $dsql; $row = $dsql>GetOne("select count(*) as dd from dede_archives where typeid = @me"); @me = $row['dd']; {/dede:field.typeid}

在自定义位置显示栏目文章总数,可以使用{dede:countclass typeid=栏目ID/}

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何在DedeCMS中为网站栏目添加文章数量统计功能?》
文章链接:https://www.yunzhuji.net/yunfuwuqi/253044.html

评论

  • 验证码