时间:2021-07-21人气:-
我们开发织梦模板时,需要独立提取文章内容页body字段中(可以是自定义字段名称)图片,可以自定义调用图片数量值。
请将代码加入到includeextend.func.php文件中
1234567891011121314151617functiongetbodypics($string,$num){preg_match_all("/<img([^>]*)s*src=('|")([^'"]+)('|")/",$string,$matches);$imgsrc_arr=array_unique($matches[3]);$count=count($imgsrc_arr);$i=0;foreach($imgsrc_arras$imgsrc){if($i==$num)break;$result.="<imgsrc="$imgsrc"/>";$i++;}return$result;}//$result.="<imgsrc="$imgsrc"/>";这里可以给调用图片增加一些样式等。//例如:$result.="<imgclass='imgs'src="$imgsrc"/>";在 dede:arclist 和 dede:list 标签中调用代码如下:
123456789{dede:arclistaddfields='body'channelid='1'row='8'}[field:bodyfunction=getbodypics(@me,3)/]{/dede:arclist}<!--body可以改为自定义字段名称。channelid为内容模型id,数字3,为调用图片数量,可以根据需要更改-->{dede:list}[field:bodyfunction=getbodypics(@me,3)/]{/dede:list}<!--body可以改为自定义字段名称,但是需要在新建自定义字段时,一定要选择【使字段可以在列表的底层模板中获得】-->在内容模板中的调用代码:
123{dede:field.bodyfunction=getbodypics(@me,3)/}<!--body可以改为自定义字段名称,3为调用图片数量。-->