首页 >

织梦DedeCMS首页列表页调用文章中多张图片

由于图集模型有标签可以使用而文章模型没有,所以需要对文章模型做一个二次开发,下面一起来看教程,首先找到include/extend.func.php在最后一行添加

织梦DedeCMS首页列表页调用文章中多张图片
  1. functionGetpic($body)
  2. {
  3. $getpic=”;
  4. preg_match_all(“/(src)=[\”|’|]{0,}([^>]*\.(gif|jpg|png))/isU”,$body,$img_array);
  5. $img_array=array_unique($img_array[2]);
  6. $img_num=3;//此处数字就是图片数量,你自由设置
  7. $img_array=array_slice($img_array,0,$img_num);
  8. if(count($img_array)>0)
  9. {
  10. foreach($img_arrayas$key=>$value)
  11. {
  12. $picname=preg_replace(“/[\”|’|]{1,}/”,”,$value);
  13. $getpic.=”“;
  14. }
  15. }
  16. else
  17. {
  18. $getpic=”

    没有图片

    “;
  19. }
  20. return$getpic;
  21. }

图片输出限制为3,这里可以自由设置。
$img_num=3;//此处数字就是图片数量,你自由设置

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

需要注意的是这里调用的是文章模型中BODY字段,所以需要在文章模型中列表附加字段选项增加body,前台列表调用标签里需要加上addfields=’body’,首页调用标签需要加上channelid=’1’来调用。
搜索列表页页多图展示(此方法只适合文章模型)找到include/arc.searchview.class.php第694行开始的这一部分。
//搜索

  1. $query=”SELECTarc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
  2. act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath
  3. FROM`{$this->AddTable}`arcLEFTJOIN`dede_arctype`actONarc.typeid=act.id
  4. WHERE{$this->AddSql}$ordersqlLIMIT$limitstart,$row”;

修改为:

  1. //搜索
  2. $query=”SELECTarc.*,act.typedir,act.typename,act.isdefault,act.defaultname,act.namerule,
  3. act.namerule2,act.ispart,act.moresite,act.siteurl,act.sitepath
  4. FROM`{$this->AddTable}`arc
  5. LEFTJOIN`dede_arctype`actONarc.typeid=act.id
  6. LEFTJOIN`dede_addonarticle`adt1ONarc.id=adt1.aid
  7. WHERE{$this->AddSql}$ordersqlLIMIT$limitstart,$row”;

织梦DedeCMS首页列表页调用文章中多张图片
  • 织梦DedeCMS模板织梦DedeCMS把时间标签修改成“今天、明天、后天”的方法
  • 织梦DedeCMS模板织梦DedeCMS把时间标签修改成“今天、明天、后天”的方法 | 织梦DedeCMS模板织梦DedeCMS把时间标签修改成“今天、明天、后天”的方法 ...

    织梦DedeCMS首页列表页调用文章中多张图片
  • 织梦DedeCMS搜索结果每页只显示10条的搞定方式
  • 织梦DedeCMS搜索结果每页只显示10条的搞定方式 | 织梦DedeCMS搜索结果每页只显示10条的搞定方式 ...

    织梦DedeCMS首页列表页调用文章中多张图片
  • 织梦DedeCMS提示“数据校验不对”错误搞定方式
  • 织梦DedeCMS提示“数据校验不对”错误搞定方式 | 织梦DedeCMS提示“数据校验不对”错误搞定方式 ...