在很多列表调用的时候都需要有隔行换色或者多行不同颜色,特别在全通式的首页轮展图的时候,要想实现轮展图背景随着图片的更换,超过三张或多张的时候,隔行换色已经不能解决问题了,在原来的隔行换色的基础上,进行小小的修改就可以实现这样的功能。 列表调用隔行换色
全通式首页轮展图背景色更换
照片墙形式 标签说明: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} channelartlist 标签下使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global} 隔行换色(增加样式),list同arclist
{dede:list pagesize='50'} - [field:global runphp='yes' name=autoindex] $a=""; $b=""; if ((@me%2)==0) @me=$a; else @me=$b; [/field:global] [[field:typelink/]][field:pubdate function="MyDate('Y-m-d',@me)"/] [url=[field:arcurl /]][field:title /][/url]
{/dede:list}
如果运用channel弄隔行换色,需要自增从1开始,精简写法如下:
{dede:channel row=6 typeid=''} [field:global name=autoindex runphp="yes"]((@me+1) % 2 == 0)?@me="- ":@me="
- ";[/field:global] [field:title/]
{/dede:channel}
隔3行(n行)换色(增加样式)精简写法,替换橙色字体部分
{dede:arclist row=6 typeid=''} [field:global name=autoindex runphp="yes"](@me % 3 == 0)?@me="- ":@me="
- ";[/field:global] [field:title/]
{/dede:arclist}
多行随意换色(增加样式) 如果想随机生成彩色/样式,可以参考文章《dede优化方法整理之:tag标签》
{dede:arclist typeid='8' row='6' orderby='weight'} [field:global runphp='yes' name=autoindex] $a="- "; $b="
- "; $c="
- "; $d="
- "; $e="
- "; $f="
- "; if ((@me/1)==1) @me=$a; else if ((@me/2)==1) @me=$b; else if ((@me/3)==1) @me=$c; else if ((@me/4)==1) @me=$d; else if ((@me/5)==1) @me=$e; else if ((@me/6)==1) @me=$f; [/field:global] [url=[field:arcurl/]][field:title/][/url]
{/dede:arclist}
精简写法
{dede:arclist row=6 typeid=''} - [field:title/]
{/dede:arclist}
公共css样式部分 这里注意每张图的在调用的时候width和height可以为空,如果是或者乱填都没关系,靠样式进行定义。
|