详解[field:global name=autoindex/]标签初始值的设置

作者 : MOOMOO 本文共2137个字,预计阅读时间需要6分钟 发布时间: 2022-04-19 共32人阅读

在幻灯片或者调用热点文章的时候经常需要用到[field:global name=autoindex/],生成后就是123456等等;

默认的初始值为1,但有时候我们可能不需要从1开始,比如从0开始:

[field:global name=autoindex runphp=”yes”]@me=@me-1;[/field:global]

相反,如果想让它从2开始,那就用这个代码:

[field:global name=autoindex runphp=”yes”]@me=@me+1;[/field:global]

在幻灯片或者调用热点文章的时候经常需要用到[field:global name=autoindex/],生成后就是123456等等;

默认的初始值为1,但有时候我们可能不需要从1开始,比如从0开始:

[field:global name=autoindex runphp=”yes”]@me=@me-1;[/field:global]

相反,如果想让它从2开始,那就用这个代码:

[field:global name=autoindex runphp=”yes”]@me=@me+1;[/field:global]

在织梦的{dede:arclist/}的标签中,有一个非常有用的,[field:global.autoindex/],这个标签是一个自增长标签,他的值是从1开始,跟着你的列表自动自增,在我们给网站加入一些效果时候会非常有用。

这里再介绍一下,如果想让他从0开始自增的方法:[field:autoindex runphp=’yes’]@me=$GLOBALS[‘autoindex’]-1;[/field:autoindex],这里的-1是重点,如果想从2开始自增就是+1以此类推

这个标签默认在sql标签中是不可以使用的,如果希望在sql语句的标签中加入,可以这样做。比如我们想修在{dede:sql/}标签中使用

首先找到 /includ/taglib文件夹下的sql.lib.php文件

打开后我们找到第34行,也就是代码 $ctp->LoadSource($Innertext); 处,

在下面加上以下一段代码:$GLOBALS[‘autoindex’] = 0; 这段代码就是定义一个全局变量,并赋值为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();
}

这样一来,这个[field:global.autoindex/]标签就可以在那个{dede:sql/}中使用了,我们举个例子:

{dede:sql sql='select * from [url=mailto:dede_archives]dede_archives'[/url]}
[field:global.autoindex/]-[field:title/]
{/dede:sql}

itemindex在channelarclist中的使用类似于autoindex

arclist 标签下使用 [field:global.autoindex/] 默认从1开始

channel 标签下使用 [field:global.autoindex/] 默认从0开始

channelartlist 标签下使用 {dede:global.itemindex/} 默认从1开始

arclist 从0开始 [field:global name=autoindex runphp=”yes”]@me=@me-1;[/field:global]

channel 从1开始 [field:global name=autoindex runphp=”yes”]@me=@me+1;[/field:global][field:typename/]

channelartlist 从0开始 {dede:global name=itemindex runphp=’yes’}@me=@me-1;{/dede:global}

案例:

如果要实现排行榜,前三名的样式不一样

[field:global runphp='yes' name=autoindex]      
$a="";  $b="";     $c=""; if (@me > 3) @me = $c.@me.$b; else @me = $a.@me.$b;
[/field:global]

如果样式 都是不同的 还可以这样定义

[field:global runphp='yes' name=autoindex]      $a="";  $b="";     $c=""; if (@me > 3) @me = $c.@me.$b; else @me = $a.@me.$b; [/field:global]
1. 本站所有资源来源于用户上传和网络,仅作为演示数据,如有侵权请邮件联系站长!
2. 本站客服QQ:4387159,唯一购买官网:MooMoo.TOP!
3. 盗版,破解有损他人权益和违法作为,请各位会员支持正版!
MooMoo » 详解[field:global name=autoindex/]标签初始值的设置

常见问题FAQ

是否支持共享资源赚外快?
本站支持任何人上传资源,一经采用即可展示,客户下单既有80%的提成。
可以免费教技术吗?
大家可以加群进行探讨共同进步,重点问题管理员会进行解答。
我是小白要怎么学习?
加群后做到不耻下问,看文章学习演示就能成为大佬。

发表评论