dedecms自定义标签调用自定义模型中非空字段文章

dedecms自定义标签调用自定义模型中非空字段文章

前文:织梦dede:arclist标签调用带有自定义模型的文章时没有关于自定义字段非空的判断,这样调出的自定义图片难以控制

本文以调用自定义图片字段为例

首先

/include/taglib/下加上arclistcgal类,

此类衍生于arclist

下载地址:

http://download.csdn.net/download/wxincome/4651090

然后

模板调用方法:

{dede:arclistcgal falg='p,c' orderby=pubdate typeid=583 channelid=3  row=7 addfields='lmypic' noempty='lmypic'}
                <img id="case[field:global.autoindex/]" class="cur" οnmοuseοver="set('case',[field:global.autoindex/],7)" src="[field:lmypic function='GetOneImgUrl(@me,1)'/]" />  {/dede:arclistcgal}

方法解释:调用自定义栏目模型id为3的栏目(id=583)的lmypic字段不为空的推图文章

lmypic:自定义图片字段

noempty='lmypic' :对图片进行非空验证

[field:lmypic function='GetOneImgUrl(@me,1)'/] :调用自定义图片的方法。如果字方法掉不出图片连接可能/include/extend.func.php缺少GetOneImgUrl方法

/include/extend.func.php中加上

function GetOneImgUrl($img,$ftype=1){   
    if($img <> ''){   
        $dtp = new DedeTagParse();   
        $dtp->LoadSource($img);   
        if(is_array($dtp->CTags)){   
            foreach($dtp->CTags as $ctag){   
                if($ctag->GetName()=='img'){   
                    $width = $ctag->GetAtt('width');   
                    $height = $ctag->GetAtt('height');   
                    $imgurl = trim($ctag->GetInnerText());   
                    $img = '';   
                    if($imgurl != ''){   
                        if($ftype==1){   
                            $img .= $imgurl;   
                        }   
                        else{   
                            $img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" />';   
                        }   
                    }   
                               
                }   
            }   
        }   
        $dtp->Clear();   
        return $img;       
    }   




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值