帝国cms输出自增数字的方法

帝国CMS输出自增数字的主要目的,还是为了给输出的文章列表做一个简单排序,这个排版样式对于内容浏览者来说好处多多,今天我们主要来看一下这个递增数字是如何输出的。

帝国CMS中调用序号,最好的方法是万能标签调用,也就是使用[!--no.num--]标签来调用

1
<li><span>[!--no.num--]</span><a href="/xxxxx/xxxxxx.html">[!--title--]</a></li>

灵动标签调用序号使用:

1
<?=$bqno?>

帝国万能标签只能调用信息,调用栏目排列序号需要灵动标签上场

1
2
3
[e:loop={"select * from phome_enewsclass where bclassid=0 order by classid limit 10 ",10,24,0}]
<li><span><?=$bqno?></span><a href="<?=$bqsr['classurl']?>"><?=$bqr[classname]?></a></li>
[/e:loop]

如果序号不规则,不是从1开始的话,个人观点还是灵动标签比较方便

1
2
3
<?=$bqno?>   是从1开始。
<?=$bqno+1?> 是从2开始。
<?=$bqno+2?> 是从3开始。

当然有些时候,变换一个小图标,例如更加别致的列表,用图片进行修饰,看起来更带劲哦。此时,我们就需要用图片序号

1
<img src="/[!--no.num--].gif">

当然了,如果用<?=$bqno?>标签,则需要在灵动标签里面写PHP代码来判断一下<?=$bqno?>的值,进而来调用不同的样式图片,特别是有一些奇葩的代码效果需求,例如一般情况下,标签<?=$bqno?>输出的效果是这样

1
1 2 3 4 5 6 7 8 9

但是我们需要的效果是,

1
01 02 03 04 05 06 07 08 09 10

这个时候,我们就需要修改代码为

1
<?=sprintf("%02d", $bqno)?>

其中%02d的作用,是当输出的整数少于两位时,就用0在左边补上,以此类推,如果我们需要的是一个有意思的三位数样式,例如

1
001 002 003 004 005 006 007 008 009 010

我们就需要将上面的灵动标签代码写成

1
<?=sprintf("%03d", $bqno)?>

本篇文章应该是最全的有关帝国CMS输出带序号列表的文章,希望大家好好阅读,仔细体会,多多实践。