• 网站认证
  • 教程:4,432|
  • 话题:3127|
  • 评论:44|
  • 会员:173|
  • 注册
  • 查看作者
  • 织梦dedecms获取图片集多张图片及注释的方法(循环输出)

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

    实现效果如图:

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

    1、在/include/common.func.php里加上方法//循环输出多张图片function
    functionGetimgs($aid,$imgwith=300,$imgheight=270,$num=0,$style=''){
    global$dsql;
    $imgurls='';
    $row=$dsql->getone("SelectimgurlsFrom`dede_addonimages`whereaid='$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.="<imgsrc=".trim($wordcount[2][$i])."width=".$imgwith."height=".$imgheight.">";
    }
    }
    return$imglist;
    }

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

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

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

    原文出自

    链接牛气e0a9401015d4d.html

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

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

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

    //循环输出多张图片注释
    functionGetimgnote($aid,$num=0){
    global$dsql;
    $imgurls='';
    $row=$dsql->getone("Selectimgurls`whereaid='$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.="<divclass=\\"gr\\">".trim($wordcount[1][$i])."</div>";
    }
    }
    return$imglist;
    }

    2,

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

  • 0
  • 0
  • 0
  • 1.8k
  • 请登录之后再进行评论

    登录
  • 做任务
  • 实时动态
  • 偏好设置
  • 自定义-1
  • 单栏布局 侧栏位置: