学习NO.1 发表于 2015-12-22 10:29:37

DedeCms织梦调用文章第一张图片(非缩略图)的实现方法

这篇文章主要是介绍dede调用文章第一张图片的实现代码,需要的朋友可以参考下

需要进行两个操作 第一步,修改include/extend.func.php文件,最下面插入函数,查询的是文章附加表,如需查询图片集、软件等模块的,改表名和字段名即可

第一部代码如下:
function GetFirstImg($arcid){   
global $dsql;   
$query= "SELECT body FROM `dede_addonarticle` where aid='$arcid'"; $row = $dsql->GetOne($query); $preg = "/<img.*?src=[\'\"](.+?)[\'\"].*?>/i";   
preg_match_all($preg, $row['body'], $match);   
//print_r($match);   
return $match;   
}

第二部修改

调用标签include/taglib/arclist.lib.php 织梦调用文章内容的时候需用用到litpic字段,需要重新构造此字段,找到 function lib_arclistDone()函数里面的 $row,增加
//调用文章第一张图片,非缩略图,如果为空,则调用缩略图。

代码如下:
if(GetFirstImg($row['id'])!="") {
$row['litpic']=GetFirstImg($row['id']);
}

写判断了是为了再调用文章无图的时候仍可以选择缩略图显示。 织梦v57 sp1大概在475行,$row[]数组的下面加入即可。 这样亦可以用原来的标签字段调用图片。文章有第一张图片即显示第一个图片,如无则调用文章缩略图

页: [1]
查看完整版本: DedeCms织梦调用文章第一张图片(非缩略图)的实现方法