栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > dedecms

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

dedecms 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

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

  1. 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 .=""; 
    
    } 
    } 
    else 
    { 
    $getpic="

    没有图片

    "; } return $getpic; }

图片输出限制为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 = "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";
      

修改为:

  1.     //搜索  
  2. ;
  3. $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"
      
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/7088.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号