帝国CMS修改图集默认显示模板格式
帝国CMS 的图集字体 [!----morepic--] 默认自带的输出模板是用table表格的。非常不利于配合JS制作各种图集特效。
想要自定义图片集输出模板方法有二:
1、修改 [!----morepic--] 字段模板:
打开 e/class/functions.php 文件
找到:
//返回图片集html代码
function ReturnMorepicpathHtml($add){
global $public_r,$fun_r;
if(empty($add[morepic]))
{
return '';
}
$line=$add[num]?$add[num]:1;//每行显示
$picpath='';
$path_r=explode("/r/n",$add[morepic]);
for($pj=0;$pj<count($path_r);$pj++)
{
$p=$pj+1;
if(($p-1)%$line==0||$p==1)
{
$picpath.='<tr>';
}
$showdown_r=explode('::::::',$path_r[$pj]);
//显示图片名称
$name='';
if(!empty($showdown_r[2]))
{
$name="<br><span style='line-height=18pt'>".$showdown_r[2]."</span>";
}
$width=$add[width]?" width='".$add[width]."'":'';//宽度
$height=$add[height]?" height='".$add[height]."'":'';//高度
$picpath.="<td align=center><a href='".$public_r[newsurl]."e/ViewImg/index.html?url=".$showdown_r[1]."' target=_blank><img src='".$showdown_r[0]."'".$width.$height." border=0>".$name."</a></td>";
//分割
if($p%$line==0)
{
$picpath.='</tr>';
}
}
if($p<>0)
{
$table="<table width='100%' border=0 cellpadding=4 cellspacing=4>";
$table1="</table>";
$ys=$line-$p%$line;
$dotr=0;
for($j=0;$j<$ys&&$ys!=$line;$j++)
{
$dotr=1;
$picpath.='<td></td>';
}
if($dotr==1)
{
$picpath.='</tr>';
}
}
$value=$table.$picpath.$table1;
return $value;
}
共中,红色代码这部分就主要的图片输出格式,按需要修改即可,比如改成<li></li>格式。
方法二:不用 [!----morepic--] 调用,直接用PHP代码自定义调用: