admin管理员组

文章数量:1446760

【DEDE列表】dede首页列表页调用文章中多张图片

DEDE织梦cms常用的参数标签汇总、以及操作过程中的一些bug问题解决方法,dede网站二开,以下龙腾飞网络科技-小吴在建站实操中笔记记录,织梦dede建站教程保存使用非常方便:

【DEDE建站教程】

dede首页列表页调用文章中多张图片

一、首页、列表页

由于图集模型有标签可以使用而文章模型没有,需要做二次开发,首先找到include/extend.func.php最后一行添加

代码语言:javascript代码运行次数:0运行复制
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; 
}  

图片输出限制为3,这里可以自由设置

代码语言:javascript代码运行次数:0运行复制
$img_num=3;//此处数字就是图片数量,你自由设置   

$img_array=array_slice($img_array,0,$img_num);

需要注意的是这里调用的是文章模型中BODY字段,所以需要在文章模型中列表附加字段选项增加body,前台列表调用标签里需要加上

代码语言:javascript代码运行次数:0运行复制
addfields='body'

首页调用标签需要加上

代码语言:javascript代码运行次数:0运行复制
channelid='1'

来进行调用。

二、搜索列表页页多图展示(此方法只适合文章模型)

找到include/arc.searchview.class.php694行开始的这一部分。

代码语言:javascript代码运行次数:0运行复制
//搜索  
$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";

修改为:

代码语言:javascript代码运行次数:0运行复制
//搜索  
$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";  

完成。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。原始发表:2024-10-31,如有侵权请联系 cloudcommunity@tencent 删除搜索笔记建站教程模型

本文标签: DEDE列表dede首页列表页调用文章中多张图片