我在extend.func.php里面自定义函数:function BodyImgNum($aid) 

    global $dsql;
    $sql = "select aid,body from dede_addonarticle  where aid='$aid' ";
    $arcRow = $dsql->GetOne($sql);
    $body = $arcRow['body'];
    $img_array = array(); 
    $patte="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>/i"; 
    preg_match_all($patte,$body,$img_array); 
    $img_array = array_unique($img_array[1]); 
    $num = count($img_array);
    return $num; 
}这个是统计每篇文章内容 图片数量的,现在我要做的是在list里面做个判断,比如图片数量<=1输出a,等于2输出b,等于3输出c,织梦list代码如下:[field:id function="BodyImgNum(@me)" /] //这个是获取图片数量的
{dede:list}
这中间循环怎么写呢?
{/dede:list}

解决方案 »

  1.   

    应该这样弄:{dede:list}
     [field:array runphp="yes"]
      [code=php]
       $num = BodyImgNum(@me['id']);  //这个是获取图片数量
       $licpic = @me['litpic'];
       $title = cn_substr(@me['title'],30);
       ......//这里写你要获取的字段,我就不写了
      if($num == 2){
         @me = b
       }elseif($num == 3){
        @me = c
       }else{
        @me = a
       }
      
     [/field:array]
    {/dede:list}
    [/code]
    基本上就是样,你直接在@me=""里面写你的样式就行了,比如:@me="<div class='ls'>$title</div><div><img src='{$litpic}' alt=''></div>";切记结尾必须是冒号;