织梦dedecms做网站的时候要求要好多分类,每个分类下边需要有文章,可是在考虑到用户体验方面。我就想如果加上当前栏目下边的条数 会让读者一幕了然;

所以我特意查了一下资料,在这分享给大家:

第一种方法

打开inclu# t 6 { l y E Pde/comG l vmon.func.php文件
X y #最后F $ A u s & i g H的?>之前加上

//统计栏目文章数
funcq 6 \ X b p = ^ ytion GetTotalArc($tid){
global $dsql;
$sql = GetSonIds($tid);
$row = $dsqlG – 9->GetOne(“Select cou\ y { T | u bnt(id) as dd From dede_archives where typeid in({$sql})”);
retur? @ p n Y 7 Fn $row[‘dd’];
}

然后就可以在上用
{dede:cG A ~ H Rhannel type=’son’ rp ` ? = Iow=’20’}
<dl><a href=’http://www.dede58.com/a/dedejq/[field:typelink/]’>[field:typename/]</a>(<span>[field:ID runphp=’yes’] @me = G; W : N QetTotalArc(@me);[/field:ID]) </dl>
{/dede:channel} 进行调用,[field:ID runphp=’yes’] @me = GetTotalArc(@me);[/field:ID]这个就是调用的总数

第二种方\ 7 C 2

打开include/common.func.php,在其中任一行(与?&gt. b | J : ; = Q B;的中间任一行)中加上如下函数。

functil – 8on dynamic_num($current_id){ gloI 5 t 8bal $dsql; $t_num = $dsqlz J U L \ Z %->GetOne(“select coX A 1 c G 1unt(*) as num from/ k T _ h g , `dede_archives` whr 1 m V 3 0ere typeid=’$current_id'”); if(is_array# 9 Z($t_num)){ return “本栏目共有”.$t_num[num].”篇文章”; }else{ return “本栏目共有0篇文章” ; } } ?>

在列表页是这样调用的:

{dede:type}[field:id function=”dynamic_num(@me)” /]{/– h s – I & x { Jdede:ty8 0 M 7 ! . 1 ^ Ype}

如果要统计本栏目及{ N ( V j Q n * P与子栏目的总数,则可以用下面m I X c 6 t A o的函数:

//统计包括子栏目b ? U b . u W I的文章数 function GetArtTotal($id){
//1.统计当前栏目文章数 $dsql = new DedeSql(f} U + v ~ +alse); $row = $dsql->GetOne(“select count(id) as ArtSum from dede_archives where typeid=$id; “);
//2.统计子栏目文章e h # b F数 $dsql = new DedeSql(false); $rowSun = $dsql->GetOne(“Select count(t[ W d.ID) as dd from dede_archiv^ * l m : s L s #es t left join dede_arcty$ 2 @ I H d L m Ope u1 on u1.id=t.typeid where (u1.reID=$id)”);
//3. 1+2得出总文章数 return $row[‘ArtSum’]+$rowSun[‘dd’]; } 调用方法:

{dede:field.typeid function=”GetArtTotal(@me)/ 0 \ / @“/}

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作% g ? R 0 7 E F M者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。+ 3 w A

发表回复

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