织梦DedeCMS使用addfields就可以实现增加自定自段了,不过有一点需要注意的是如果你在在后面加的需要把底层给选中,否则是可能调用不到字段的.
语法代码如下:
{dede:arclist addfields=’附加字段1,附加字段2,附加字段3′ row=’8′ channelid=’自定义模型id号’}
[field:textlink /] [field:附加字段1/] [field:附加字段2/]< [field:附加字段3/]<
{/dede:arclist}
实例代码如下:
{dede:arclist flag=’c’ typeid=’23’ channelid=’1′ addfields=’tpic2′ limit=’0,8′}
{/dede:arclist}
要求:
1 | 指定 channelid 属性
2 | 指定要获得的字段 addfields=’字段1,字段’
3 | 必须选择 使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择),这个可以用来做普通的文字类型,如果要是图片的类型的话会出现.代码如下:
{dede:img text=” width=’270′ height=’129′} /uploads/101017/1-10101H21F54P.jpg {/dede:img}
这明显不是想要的,这个时候弄一个自定函数,代码如下:
function GetOneImgUrl($img,$ftype=1){
if($img ”){ //var articleUrl = http://www.liuzhongwei.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 .= ‘‘;
}
}
}
}
}
$dtp->Clear();
return $img;
}
}
调用代码如下:https://www.liuzhongwei.com/a/dedejq/[field:tpic2 function=’GetOneImgUrl(@me,1)’/]这样即可.