欢迎光临
我们一直在努力

织梦dedeCMS模板首页列表页调用文章中多张图片

由于图集模型有标签可以使用而文章模型没有,所以我们需要对文章模型做一个二次开发。首先打开/include/extend.func.php文件
在最后一行添加以下代码:
function Getpic($body) 
{ 
$getpic = ''; 
preg_match_all("/(src)=["|'| ]{0,}([^>]*.(gif|jpg|png))/isU",$body,$img_array); 
 
$img_array = array_unique($img_array[2]); 
$img_num=3;//此处数字就是图片数量,你自由设置 
$img_array=array_slice($img_array,0,$img_num); 
if(count($img_array)>0) 
{ 
foreach($img_array as $key=>$value) 
{ 
$picname = preg_replace("/["|'| ]{1,}/", '', $value); 
$getpic .="<a href='".$picname."' target='_blank'><img src='".$picname."' border=0 /></a>"; 
 
} 
} 
else 
{ 
$getpic="<p>没有图片</p>"; 
} 
return $getpic; 
}  

 

ps:$img_num=3;//此处数字就是图片数量

$img_array=array_slice($img_array,0,$img_num);   
需要注意的是这里调用的是文章模型中BODY字段,所以需要在文章模型中列表附加字段选项增加body,前台列表调用标签里需要加上addfields=’body’,首页调用标签需要加上channelid=’1’来调用。
搜索列表页页多图展示(此方法只适合文章模型)
打开/include/arc.searchview.class.php文件
找到以下代码
$query = "SELECT arc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,  
act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath  
FROM `{$this->AddTable}` arc LEFT JOIN `dede_arctype` act ON arc.typeid=act.id  
WHERE {$this->AddSql} $ordersql LIMIT $limitstart,$row";

 

然后修改为:

$query = "SELECT arc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,  
act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath    
FROM `{$this->AddTable}` arc   
LEFT JOIN `dede_arctype` act ON arc.typeid=act.id  
LEFT JOIN `dede_addonarticle` adt1 ON arc.id=adt1.aid      
WHERE {$this->AddSql} $ordersql LIMIT $limitstart,$row"

 

赞(0) 打赏
未经允许不得转载:新起点博客 » 织梦dedeCMS模板首页列表页调用文章中多张图片
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

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

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏