使织梦图集第一张图片展现不同的样式

织梦作为当前建站主流的CMS,拥有着庞大的受众群体,尽管团队已宣布对织梦停止维护,但其优良的性能深受许多网站建设爱好者青睐,在使用织梦图集模块时,需要将第一张图片与其他图集图片样式区分开来,但无奈织梦图集并没有提供如同列表编号的功能,因此想要实现织梦图集第一张图片展现不同的样式,则需要先让图集支持编号,而后使用PHP语句进行判断输出.

使织梦图集第一张图片展现不同的样式
使织梦图集第一张图片展现不同的样式

首先我们需要来完成织梦图集编号的功能,找到位于include/taglib/的productimagelist.lib.php文件,该文件主要处理图集图片输出,找到

foreach($images as $row)
    {
        foreach($ctp->CTags as $tagid=>$ctag)
        {
            if(isset($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }
        }
        $revalue .= $ctp->GetResult();
    }
    return $revalue;
}

将其更改为

$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']++;
				}
    return $revalue;
}

模板中在需要调用图集的位置,添加以下代码

{dede:productimagelist}
[field:array runphp=yes]
if(@me['autoindex'] == 1) {
@me = "
<div class=\"item active\">
<img src=\"{@me['imgsrc']}\" alt=\"{@me['text']}\">
</div>"; }	
else{ @me ="
<div class=\"item\">
<img src=\"{@me['imgsrc']}\" alt=\"{@me['text']}\">
</div>"; }	
[/field:array]
{/dede:productimagelist}

当然如果你想要让每一个图片都呈现不同的样式,也可以在模板中输出以下代码


{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}

未经允许不得转载:西德SEO » 使织梦图集第一张图片展现不同的样式

打赏

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏