织梦CMS arclist标签调用自定义字段方法

织梦CMS使用addfields就可以实现增加自定自段了,不过有一点需要注意的是如果你在在后面加的我们需要把底层给选中,否则是可能调用不到字段的.

 

语法代码如下:

 

{dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'} 

[field:textlink /]   [field:附加字段1/]   [field:附加字段2/]<  [field:附加字段3/]<<br /> 

{/dede:arclist} 

实例代码如下:

 

{dede:arclist flag='c' typeid='23'  channelid='1'  addfields='tpic2' limit='0,8'} 

<div class="works"> 

<a title="[field:title /]" href="#"> 

<img src="[field:tpic2 function='GetOneImgUrl(@me,1)'/] " width="940" height="440" alt="#"> 

</a> 

</div> 

{/dede:arclist} 

要求:

 

1、指定 channelid 属性

 

2、指定要获得的字段 addfields='字段1,字段'

 

3、必须选择  使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择),这个可以用来做普通的文字类型,如果要是图片的类型的话会出现.代码如下:

 

{dede:img text='' width='270' height='129'} /uploads/101017/1-10101H21F54P.gif {/dede:img} 

这明显不是我们想要的,这个时候我们弄一个自定函数,代码如下:

 

function GetOneImgUrl($img,$ftype=1){  

if($img <> ''){ //var articleUrl = http://www.最模板zuimoban.com 

 $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;  

}  

调用代码如下:[field:tpic2 function='GetOneImgUrl(@me,1)'/]这样即可.


1、本网站名称:源码村资源网
2、本站永久网址:https://www.yuanmacun.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
源码村资源网 » 织梦CMS arclist标签调用自定义字段方法
您需要 登录账户 后才能发表评论

发表评论

欢迎 访客 发表评论