查看: 44|回复: 0

[教程] dede调用文章第一张图片(非缩略图)的实现方法

[复制链接]

5

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2010-3-13
发表于 2023-9-24 00:00:00 | 显示全部楼层 |阅读模式
需要进行两个操作 

第一步,修改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[1][0]; 


第二部修改 调用标签include/taglib/arclist.lib.php 

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


复制代码
代码如下:

if(GetFirstImg($row['id'])!="") 

$row['litpic']=GetFirstImg($row['id']); 


写判断了是为了再调用文章无图的时候仍可以选择缩略图显示。 织梦v57 sp1大概在475行,$row[]数组的下面加入即可。 

这样亦可以用原来的标签字段调用图片。文章有第一张图片即显示第一个图片,如无则调用文章缩略图.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部