织梦网站首页栏目页调用图片集第一张大图的方法

原创 2018-06-10 22:19 
摘要:

在使用织梦建设网站的时候,通过arclist文章列表标签及栏目页list标签调用图片集缩略图在放大时不能看清楚,所以想调用图片集的第一张大图,但是织梦没有提供调用方法,小编在网上找了下解决方法,在这里分享给大家

在使用织梦建设网站的时候,通过arclist文章列表标签及栏目页list标签调用图片集缩略图在放大时不能看清楚,所以想调用图片集的第一张大图,但是织梦没有提供调用方法,小编在网上找了下解决方法,在这里分享给大家。
一、通过arclist文章列表标签调用图片集第一张大图的方法
1、打开include/extend.func.php文件,并在最后添加如下代码:
//提取图集第一张大图,供arclist标签调用
function Get_firstbigimg($aid){
global $dsql;
$imgurls='';
$row=$dsql->getone("Select imgurls From #@__addonimages where aid='$aid' ");
$imgurls=$row['imgurls'];
preg_match_all("/{dede:img[^>]+}(.*){\/dede:img/isU",$imgurls,$imgurlsed);
$get_firestimg = $imgurlsed[1][0]; //
return $get_firestimg;
}
2、打开include/taglib/arclist.lib.php 文件,并在513行左右添加如下代码:
$row['first_imgurl'] = Get_firstbigimg($row['id']);
3、通过[field:first_imgurl/]语法调用图集第一张大图:
{dede:arclist row='3' typeid='6' titlelen='60' orderby='pubdate'}
<li><a href="[field:arcurl/]" target="_blank"><img src="[field:first_imgurl/]" /><br />[field:title/]</a></li>
{/dede:arclist}
备注:如果需要限制宽、高比例可以用如下代码
[field:first_imgurl function='thumb(@me,450,360)'/]
二、通过list文章列表标签在栏目页调用图片集第一张大图的方法
网上找到的方法只能解决arclist标签调用图集第一张大图的问题,但是没有在栏目页调用第一张大图的说明。小编根据以上方法推理,在原方法的基础上,通过修改arclist.view.php文件解决了。
1、打开include/arclist.view.php文件,在926行左右添加代码:
$row['first_imgurl'] = Get_firstbigimg($row['id']);
2、调用方法:
{dede:list pagesize='10' orderby='pubdate'}
<li><img src="[field:first_imgurl/]"  alt="[field:title/]"/></li>
{/dede:list}
小编在网上还找到另外一种修改include/extend.func.php文件的代码,和方法一中的代码相似,但又略有不同,也在这里分享给大家(小编没有验证有效性)。
function get_firstbigimg($arcid){
//获取图片附加表imgurls字段内容进行处理
$dsql = new DedeSql(false);
$row = $dsql->GetOne("Select imgurls From dede_addonimages where aid='$arcid'");
preg_match_all("|{dede:img ddimg='(.*)' text=(.*)|Uis",$row['imgurls'],$imgurls); //获取所有图片地址
$get_firestimg = $imgurls[1][0]; // 
return $get_firestimg;
}

本文作者:张语
版权声明:欢迎分享本文,转载请保留作者及文章链接!欢迎大家一起学习讨论!

发表评论


表情