由于图集模型有标签可以使用而文章模型没有,所以需要对文章模型做一个二次开发,下面一起来看教程,首先找到include/extend.func.php在最后一行添加
- functionGetpic($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_arrayas$key=>$value)
- {
- $picname=preg_replace(“/[\”|’|]{1,}/”,”,$value);
- $getpic.=”“;
- }
- }
- else
- {
- $getpic=”
没有图片
“;- }
- 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=”SELECTarc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
- act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath
- FROM`{$this->AddTable}`arcLEFTJOIN`dede_arctype`actONarc.typeid=act.id
- WHERE{$this->AddSql}$ordersqlLIMIT$limitstart,$row”;
修改为:
- //搜索
- $query=”SELECTarc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
- act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath
- FROM`{$this->AddTable}`arc
- LEFTJOIN`dede_arctype`actONarc.typeid=act.id
- LEFTJOIN`dede_addonarticle`adt1ONarc.id=adt1.aid
- WHERE{$this->AddSql}$ordersqlLIMIT$limitstart,$row”;