织梦dedecms图集图片每张自定义输出不同样式

如果你的图集图片要在内容页按不同的html输出每一张图片,出了CSS+js能实现,我们也可以用array runphp的方式来让每一张自定义输出

效果

修改教程

\include\taglib\productimagelist.lib.php 找到

foreach($images as $row)

{

中间省略...

}

改成

$GLOBALS['autoindex'] = 1; foreach($images as $row) { $row['autoindex'] =  $GLOBALS['autoindex']; foreach($ctp->CTags as $tagid=>$ctag) { if($ctag->GetName()=='array') { $ctp->Assign($tagid,$row); } else { if(isset($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); } } } $revalue .= $ctp->GetResult(); $GLOBALS['autoindex']++; }

内容页图集标签

{dede:productimagelist} [field:array runphp=yes] if(@me['autoindex'] == 1) { @me = "<strong>{@me['autoindex']} - <img src='{@me['imgsrc']}'></strong>\n"; } elseif(@me['autoindex'] == 2) { @me = "<p>{@me['autoindex']} - <img src='{@me['imgsrc']}'></p>\n"; } elseif(@me['autoindex'] == 3) { @me = "<span>{@me['autoindex']} - <img src='{@me['imgsrc']}'></span>\n"; } else { @me = "<div>{@me['autoindex']} - <img src='{@me['imgsrc']}'></div>\n"; } [/field:array] {/dede:productimagelist}

复杂一点的写法

<ul class="tuzs clearfix"> {dede:productimagelist} [field:array runphp=yes] if(@me['autoindex'] == 2) { @me = "<li class='leftlab' style='height:914px'><div class='huise'></div> <img src='{@me['imgsrc']}'> </li>"; } else { @me = ""; } [/field:array] {/dede:productimagelist} <li class="rightlab"> {dede:productimagelist} [field:array runphp=yes] if(@me['autoindex'] == 3) { @me = "<div class='rtup' style='height:457px'><div class='huise'></div><img src='{@me['imgsrc']}'> </div>"; } elseif(@me['autoindex'] == 4) { @me = "<div class='rtdn' style='height:457px'><div class='huise'></div><img src='{@me['imgsrc']}'> </div>"; } else { @me = ""; } [/field:array] {/dede:productimagelist} </li> </ul>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/a67ba75cdc7a1ebaff7184fc96582a05.html