织梦侠
WWW.2L3.NET

dede织梦cms获取图片集多张图片及注释的方法(循环输出)

在为客户做网站的时候需要做到的效果是每个案例都要很多图片,并且用一定的效果进行展示。但是发现织梦本身自带的调取方法实现的效果是一次性调取多个参数,并且展现的效果不是我需要的,当时很纠结。后来自己琢磨琢磨,可惜没成功。最后通过网络百度搜索找到了实现方法。

 

实现效果如图:

 

 

实现的方法一共有两个步骤:

1、在/include/common.func.php 里加上方法
 

 //循环输出多张图片function
function Getimgs($aid, $imgwith = 300, $imgheight = 270, $num = 0, $style = ''){
    global $dsql;
    $imgurls = '';
     $row = $dsql -> getone("Select imgurls From`dede_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++){
        if($style == 'li'){
            $imglist .= "<li><ahref=#" . $i . "><imgsrc=". trim($wordcount[2][$i]) . " width=" . $imgwith . " height=" . $imgheight . "></li></a>";
        }else{
            $imglist .= "<img src= " . trim($wordcount[2][$i]) . " width=" . $imgwith . "height=" . $imgheight . ">";
        }
    }
     return $imglist;
     }

 

 

2、在模板里调用方法{dede:field.id function="Getimgs(@me,400,400,10)" /}

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

注释:<img src= " . trim($wordcount[2][$i]) . " width=" . $imgwith . "height=" . $imgheight . ">"是调取出来的格式,可根据自己需要的样式进行定义,比如加个li或者 添加class等等,这里就不多讲了。

 

希望这篇文章对大家有帮助,如果有错误,5k欢迎大家多多定评指出噢。交流才会进步!


以下方法是调取图片集多张图片注释的方法,操作类似。

1,在/include/common.func.php 里加上

//循环输出多张图片注释
function Getimgnote($aid, $num = 0){
    global $dsql;
    $imgurls = '';
     $row = $dsql -> getone("Select imgurls ` where aid='$aid'"); //
     $imgurls = $row['imgurls'];
     preg_match_all("|text='(.*)' width|U", $imgurls, $wordcount);
     $count = count($wordcount[1]);
     if ($num > $count || $num == 0){
        $num = $count;
    }
    for($i = 0;$i < $num;$i++){
        if($style == 'li'){
            $imglist .= "<li><ahref=#" . $i . "><imgsrc=". trim($wordcount[1][$i]) . " width=" . $imgwith . " height=" . $imgheight . "></li></a>";
        }else{
            $imglist .= "<div class=\"gr\">". trim($wordcount[1][$i]) ."</div>"; 
        }
    }
     return $imglist;
     } 

2、在模板里调用方法{dede:field.id function="Getimgnote(@me,10)" /}

转载请注明文章来自织梦侠[秩名]作者的-dede织梦cms获取图片集多张图片及注释的方法(循环输出)
联系作者
取消
这个作者很懒什么也没留下!
打赏作者
取消

本文作者无偿奉献,就打赏给我们织梦侠吧!

扫码支付
扫码打赏,建议金额1-10元

打开支付宝扫一扫,即可进行扫码打赏哦

提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。

织梦技巧   阅读()  秩名