找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1835|回复: 0
打印 上一主题 下一主题

dedeCMS使用arclist标签调用自定义字段的方法

[复制链接]

2560

主题

2560

帖子

7622

积分

论坛元老

Rank: 8Rank: 8

积分
7622
跳转到指定楼层
楼主
发表于 2018-2-13 20:38:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

本文实例讲述了dedeCMS使用arclist标签调用自定义字段的方法。分享给大家供大家参考。具体分析如下:
其实方法非常的简单我们只要使用addfields就可以实现增加自定自段了,不过有一点需要注意的是如果你在在后面加的我们需要把底层给选中,否则是可能调用不到字段的.
语法代码如下:

复制代码代码如下:{dede:arclist addfields='附加字段1,附加字段2,附加字段3' row='8' channelid='自定义模型id号'}  
[field:textlink /]   [field:附加字段1/]   [field:附加字段2/]
实例代码如下:

复制代码代码如下:{dede:arclist flag='c' typeid='23'  channelid='1'  addfields='tpic2' limit='0,8'}  
  
  
[img][field:tpic2 function='GetOneImgUrl(@me,1)'/] [/img]
  
  
  
{/dede:arclist}
要求:
1、指定 channelid 属性
2、指定要获得的字段 addfields='字段1,字段'
3、必须选择  使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择),这个可以用来做普通的文字类型,如果要是图片的类型的话会出现.代码如下:
复制代码代码如下:{dede:'' width='270' height='129'} /uploads/101017/1-10101H21F54P.gif {/dede:img}  
这明显不是我们想要的,这个时候我们弄一个自定函数,代码如下:
function GetOneImgUrl($img,$ftype=1){   
if($''){ //var articleUrl = http://www.jb51.net  
$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');   
$($ctag->GetInnerText());   
$'';   
if($''){   
if($ftype==1){   
$$;   
}   
else{   
$'

';   
}   
}
}
}   
}   
$dtp->Clear();   
return $img;   
}   
}
调用代码如下:
复制代码代码如下:[field:tpic2 function='GetOneImgUrl(@me,1)'/]这样即可.
希望本文所述对大家的dedecms建站有所帮助。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端