[field:autoindex runphp='yes']@me=$GLOBALS['autoindex']+2;[/field:autoindex]
注意:此代码必须放置在循环列表的开始与结束之间才能生效。
除了{dede:arclist/}标签,许多用户也希望{dede:sql/}标签能够具备类似的自动递增功能。实际上,通过简单的修改,我们可以为{dede:sql/}标签添加这一特性。官方鼓励用户分享使用技巧和开发经验,因此这种扩展并不复杂。
接下来,我们将详细介绍如何实现这一功能。首先,找到Dedecms V5.3版本中标签文件所在的目录:/include/taglib 文件夹。我们需要修改的是{dede:sql/}标签对应的 sql.lib.php 文件。
打开 sql.lib.php 文件后,定位到第34行,即代码:
$ctp->LoadSource($Innertext);
$GLOBALS['autoindex'] = 0;
while($row = $dsql->GetArray($thisrs))
{
$sqlCt++;
foreach($ctp->CTags as $tagid=>$ctag)
{
if(!empty($row[$ctag->GetName()]))
{
$ctp->Assign($tagid,$row[$ctag->GetName()]);
}
}
$GLOBALS['autoindex']++; // 每循环一次加上一个1然后解析出来
$revalue .= $ctp->GetResult();
}
{dede:sql sql='select * from dede_archives'}
[field:global.autoindex/]-[field:title/]
{/dede:sql}