织梦DEDECMS首页列表页调取文章中多张图片
发布时间:2022-04-30 11:37:09 所属栏目:经验 来源:互联网
导读:由于图集模型有标签可以使用而文章模型没有,所以我们需要对文章模型做一个二次开发,下面一起来看教程,首先找到include/extend.func.php在最后一行添加 function Getpic($body) { $getpic = ; preg_match_all(/(src)=[/|| ]{0,}([^]*/.(gif|jpg|png))/isU,
由于图集模型有标签可以使用而文章模型没有,所以我们需要对文章模型做一个二次开发,下面一起来看教程,首先找到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; } 图片输出限制为3,这里可以自由设置。 $img_num=3;//此处数字就是图片数量,你自由设置 $img_array=array_slice($img_array,0,$img_num); 需要注意的是这里调用的是文章模型中BODY字段,所以需要在文章模型中列表附加字段选项增加body,前台列表调用标签里需要加上addfields='body',首页调用标签需要加上channelid='1'来调用。 搜索列表页页多图展示(此方法只适合文章模型)找到include/arc.searchview.class.php第694行开始的这一部分。 //搜索 $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"; (编辑:牡丹江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐