织梦去掉最后一个循环符号“|”的代码

来源:互联网 发布:mac 屏幕录像 编辑:程序博客网 时间:2024/06/05 22:33

目前总结出了两种方式。
第一种,SQL语句

{dede:sql sql="SELECT typename,typedir,defaultname FROM dede_arctype where reID = 3 order by sortrank asc limit 0,6"}<a href="[field:typedir function='str_replace("{cmspath}","",@me)'/]/" target="_blank" title="[field:typename/]" alt="[field:typename/]">[field:typename function="cn_substr(@me,12)"/]</a>[field:global.autoindex function="(@me==1 || @me==2 || @me==4 || @me==5)?'|':(@me == 3 ? '<br>':'')"/]{/dede:sql}

代码解释:

{dede:sql sql="SELECT typename,typedir,defaultname FROM dede_arctype where reID = 3 order by sortrank asc limit 0,6"}

  从表“dede_arctype”中查找“reID = 3”的内容,并返回typename、typedir、defaultname”中的内容,从1开始取6次;

[field:typedir function='str_replace("{cmspath}","",@me)'/]

  typedir中的数据如果出现“{cmspath}”则自动替换成空;

[field:typename function="cn_substr(@me,12)"/]

  typename取12个字符;

[field:global.autoindex function="(@me==1 || @me==2 || @me==4 || @me==5)?'|':(@me == 3 ? '<br>':'')"/]

  autoindex:按循环次数自动编号,也就是第一次循环为1,第二次为2,依次类推,autoindex有些特殊说明,会在下边提;
  第1,2,4,5次循环的时候输出“|”,在第3次循环的时候输出“
”。
第二种,运行php

{dede:channelartlist typeid='38,58,50,51'}<a href="{dede:field name='typeurl'/}" target="_blank" title="{dede:field name='typename'/}" alt="{dede:field name='typename'/}">{dede:field name='typename'/}</a>{dede:global name='itemindex' runphp="yes"}(@me==4)? @me="":@me="|";{/dede:global}{/dede:channelartlist}

代码解释:

{dede:global name='itemindex' runphp="yes"}(@me==4)? @me="":@me="|";{/dede:global}

  {dede:global name='itemindex' runphp="yes"}运行PHP代码,itemindex等同于第一种方法中的autoindex,在[field]标签中的写法是[field:global name=autoindex runphp="yes"](@me==0)? @me="":@me="|";[/field:global];
  【(@me==4)? @me="":@me="|";】判断语句,当循环次数等于4的时候,输出一个“(空)”,其它时候输出”|”。
  autoindex itemindex 的使用心得区别
  channelartlist 标签下使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global}
  自增1
  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 name=autoindex/],还可以用[field:global runphp='yes' name=autoindex][/field:global]
  channelartlist 标签下调用序号应使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global}

原创粉丝点击