在织梦(DedeCMS)中,arclist
标签用于生成列表页面的内容,为了调用附加字段,必须满足两个条件:
1、channelid
是指自定义模型的ID号,而非栏目ID。
2、指定要获得的字段:通过addfields
参数来指定需要获取的附加字段,多个字段之间用英文逗号分隔。
以下是具体的使用方法和示例代码:
方法一:使用arclist
标签调用附加字段
“`dede:arclist addfields=’field1,field2,field3′ row=’8′ channelid=’自定义模型id号’}
[field:textlink /] [field:field1 /] [field:field2 /] [field:field3 /]
{/dede:arclist}
在这个例子中,addfields
参数指定了需要获取的附加字段field1
、field2
和field3
,row
参数指定了每页显示的记录数为8条,channelid
参数指定了自定义模型的ID号。 方法二:使用list
标签调用附加字段 ```dede:list addfields='field1,field2,field3' pagesize='8'} [field:body /] [field:field1 /] [field:field2 /] [field:field3 /] {/dede:list}
与arclist
标签不同的是,list
标签不需要指定channelid
,因为系统可以自动判断,其他参数的含义相同。
注意事项
确保在后台的“核心 > 频道模型 > 内容模型管理”中正确添加了自定义字段,并在“管理内容模型”处勾选了“使字段可以在列表的底层获得”选项。
如果使用的是arclist
标签,且需要调用附加表中的字段,则必须同时满足上述两个条件。
取出的是附加表中所有记录的相应字段,除指定的附加表字段外,其他底层字段如arcurl
、title
、infos
等均能正常调用。
FAQs
1、如何在首页或列表页面调用文章内容?
在首页或列表页面调用文章内容时,可以使用dede:arclist
或dede:list
标签,并通过addfields
参数指定需要获取的字段为body
。
“`dede:list addfields=’body’ pagesize=’8′}
[field:body /]
{/dede:list}
“`
2、如何调用附加表中的特定字段?
如果需要调用附加表中的特定字段,可以通过在dede:arclist
标签中设置runphp="yes"
,并编写相应的 PHP 代码来实现。
“`dede:arclist titlelen=’26’ row=’20’ orderby=’id’}
[field:id runphp="yes"]
$dsql = new DedeSql(false);
$a = "SELECT * FROM dede_addonarticle WHERE aid=@me";
$arcRow = $dsql>GetOne($a);
@me = ‘url="’.$arcRow[‘sptype’].’" leixing="’.$arcRow[‘model’];
[/field:id]
{/dede:arclist}
“`
通过合理设置dede:arclist
或dede:list
标签的addfields
、row
和channelid
参数,以及确保后台配置正确,就可以在织梦(DedeCMS)中成功调用附加字段。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1112976.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复