欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  程序教程

织梦DedeCMS图片集获取多张图片方法

程序员文章站 2021-12-12 21:44:40
...

织梦的图集模型默认的调用是比较复杂的,样式也不大好修改,碰到一些需要调用很多图片,并运用js等完成一些特效的情况,往往无法很好实现。今天从网络上找到了这样的函数,对织梦默认的图集调用进行了一些修改,可以很好的自定义调用不同的样式、图片数量、图片大小等参数,比较实用。

下面是具体的实现方式,主要是添加一个自定义的函数,在/include/common.func.php文件或者include/helpers/extend.helper.php的最后面加上如下的代码:

if(!function_exists('Getimgs')){    function Getimgs($aid, $imgwith = 300, $imgheight = 270, $num = 0, $style = '')    {        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, $wordcount);        $count = count($wordcount[2]);        if ($num > $count || $num == 0){            $num = $count;        }        for($i = 0;$i < $num;$i++){         preg_match_all("/text=\'(.*)\'/isU", $wordcount[1][$i], $textword);         $alttext=trim($textword[1][0]);            if($style == 'li'){                $imglist .= "<li><img src=https://www.noniu.com/"". trim($wordcount[2][$i]) ."\" width=\"" . $imgwith . "\" height=\"" . $imgheight . "\" alt=\"".$alttext."\" /><h4>".$alttext."</h4></li>";            }            else            {                $imglist .= "<img src=https://www.noniu.com/"". trim($wordcount[2][$i]) ."\" width=\"" . $imgwith . "\" height=\"" . $imgheight . "\" alt=\"".$alttext."\" />";            }        }        return $imglist;    }}

函数的具体意思就不一一表述了,不过自己还可以进行修改,如增加增加每张图片的alt属性、修改每张图片不同的显示样式等。

在前台的调用则采用如下的代码:

{dede:field.id function="Getimgs(@me,400,400,10,li)" /}

具体的参数就是图片的宽、高和调用图片数量。这个自定义函数已经比较完善了,基本上可以完成很多的图集效果展示,你还可以增加一些自定义的参数让这个自定义函数更加完美。特意增加调用图片的Alt标签的部分,其他可以自行完善。