航帆培训2025年云南省公务员系统提高课程【网课推荐】

dedecms二次开发时使用{dede:arclist},{dede:list}获取附加表字段内容
2016-06-28来源:易贤网

2025年事业单位联考系统精讲课程全新上线,包邮赠送配套纸质讲义资料,欢迎免费试看!>>

以前用织梦DEDECMS做二次开发时获取附加表字段内容都是通过runphp执行SQL查询获得,最近看了看手册,发现一个非常简便的方法。

用arclist调用于附加表字段的方法:

方法一:

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

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

2、指定要获得的从表字段:addfields=’字段1,字段’

如:

{dede:arclist addfields=’video_description,video_id’ row=’8′ channelid=’3′}

[field:video_description /] – [field:video_id /]

{/dede:arclist}

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

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

调用格式如下:

{dede:list addfields=’video_description,video_id’ pagesize=’8′}

[field:video_description /] – [field:video_id /]

{/dede:list}

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

方法二:

DedeCms在dede:arclist标签如何调用附加表内容(其他标签一样适用)

代码如下:

{dede:arclist titlelen='26' row='20' 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来获取另外一个表中某条记录的内容。

全年巅峰班 助你公考上岸

2025公考·省考培训课程试听预约报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息