首页 > CMS > 织梦DEDE > 正文

织梦图集标签productimagelist中调用缩略图的方法

2024-07-12 08:47:50
字体:
来源:转载
供稿:网友
这篇文章主要为大家详细介绍了织梦图集标签productimagelist中调用缩略图的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴。

最近在用织梦dedecms图集模型建立图片站的时候发现{dede:productimagelist}标签调用不出来图片的缩略图,可是361源码就是想要调用每张图片的缩略图,这该如何实现呢?还是那句老话,361源码遇到问题就像如何去解决。

织梦图集标签productimagelist中调用缩略图的方法

经过研究361源码发现织梦dedecms有给每个图片生成缩略图的机制 ,只要发布的时候把显示方式选择成多行多列即可。PS:有关织梦图集和缩略图我们已经给大家介绍过不少的文章,例如《织梦dedecms提取图集第一个图片的方法》、《dedecms图集标签productimagelist调用图片顺序的修改方法》等。

请看相应源代码:

打开 dedealbum_add.php 文件,查看如下代码:

/*---------------------function _getformupload()通过swfupload正常上传的图片---------------------*/if(is_array($_SESSION['bigfile_info'])){foreach($_SESSION['bigfile_info'] as $k=>$v){$truefile = $cfg_basedir.$v;if(strlen($v) 2 ? GetImageMapDD($v, $cfg_ddimg_width) : '';if(!$hasone && $ddisfirst==1 && $litpic==''){$litpic = empty($litpicname) ? GetImageMapDD($v, $cfg_ddimg_width) : $litpicname;$hasone = TRUE;}$imginfo = !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : '';$imgurls .= "{dede:img ddimg='$v' text='$imginfo'} $v {/dede:img}rn";}}$imgurls = addslashes($imgurls);

$pagestyle就是发布图集时选择的单页多图样式、幻灯片样式、多缩略图样式这三种。其他特别要注意下列一行代码

$imgurls .= "{dede:img ddimg='$v' text='$imginfo'} $v {/dede:img}rn";

在发布图集时选择第三个,多缩略图样式即可,行数和列数如果是自己的模板的话不必理会,只要设定缩略图宽度到合适的数值就可以了

如果你发布的时候没选,可还想要生成缩略图也很简单,只需更改已发布的图集,选中下多缩略图样式就行了

这样每个图片的缩略图就生成出来了,可是怎么才能调用出来呢?

先看一下数据库储存的图片

再看上面代码,根据判断$ddimg就是缩略图了

打开 /include/taglib/productimagelist.lib.php 文件

发现它和其他标签不一样的地方,他是读取一个标签的值和属性来显示在另外一个标签中的机制

那么就在它处理标签的地方加一个新的读取属性 ,只需要加如下代码中红色部分即可完成这个功能

if($ctag->GetName()=="img")

{

$row = array();

$row['imgsrc'] = trim($ctag->GetInnerText());

$row['text'] = $ctag->GetAtt('text');

$row['litpic'] =$ctag->GetAtt('ddimg');

$images[] = $row;

}

这样[field:litpic/]就可以显示出图片所对应的缩略图了。有上面问题可以留言给我们。

以上就是织梦图集标签productimagelist中调用缩略图的方法的全部内容,希望对大家的学习和解决疑问有所帮助,也希望大家多多支持武林网。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表