演示链接:查看演示

dedecmsdede:arclist、dede:list获取附加表字段的方法

方法一:

要获取附加表内容必须符合两个条件

1、指定 channelid 属性(注意channelid不是栏目ID而是自定义模型的ID)

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

示例:

{dede:arclist addfields='cmsjzy1,cmsjzy2' row='6' channelid='1'}

[field:cmsjzy1 /] – [field:cmsjzy2 /]

{/dede:arclist}

解析:

其中 addfields='cmsjzy1,cmsjzy2' 是附加表中的两个字段,除指定的附加表字段外其它底层字段如 arcurl、title、infos 等均能正常调用

 

同样 dede:list 标签也可以调取附加表字段,和 arclist 不同的是 list 不用指定 channelid ,因为系统会自动判断

示例:

{dede:list addfields='cmsjzy1,cmsjzy2' pagesize='6'}

[field:cmsjzy1 /] – [field:cmsjzy2 /]

{/dede:list}

注意:

取出的是附加表中所有记录的相应字段

 

方法二:

dede:arclist标签调用附加表内容的方法与dede:list标签一样

示例:

{dede:arclist titlelen='33' row='6' orderby='id'}

[field:id runphp=yes]

$dsql = new DedeSql(false);

$a=SELECT * FROM dede_addongame_tg where aid=@me;

$arcRow = $dsql>GetOne($a);

@me=url=$arcRow[sptype] leixing=$arcRow[model];

[/field:id]

{/dede:arclist}
 

解析:

可以根据列表中每一条记录的不同id来获取另外一个表中某条记录的内容
 

THE END
喜欢就支持一下吧
点赞0 分享