dedecms自定义模型之独立模型在首页、列表页、内容调用内容
dedecms关于自定义模型(独立模型)的首页、列表页、内容怎么调用?在后台自定义模型(独立模型)的建立及自定义字段的添加比较简单,需要注意两点:
(1)如果某个字段需要在前台列表页显示,则在前台参数中勾选“使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择) ”;
(2)独立模型的id一定要设置为负数,否则在列表页无法调出数据,算是dedecms的一个bug。我本是计划修改下list标签,后来意外发现,只要将独立模型的id设置为负数即可正常显示。
建好独立模型和字段后,如何在网站调用呢?如下:
(1)首页调用自定义模型(独立模型):
独立模型的调用请用arclistsg 独立单表模型调用标签,而非arclist文档列表标签。网上大部分的教程文章都是针对已有的模型添加的自定义字段而非新建的独立模型,所以用arclist标签是调用不出独立模型的。
{dede:arclistsg typeid='8' row='10' addfields='name,sex,tel' channelid='-101' }
<a href="\[field:arcurl/\]" target="_blank">\[field:title/\]</a>
<span>姓名:\[field:name/\] | 性别:\[field:sex/\] | 电话:\[field:tel/\]</span>
{/dede:arclistsg}
要获取自定义字段的内容,必须符合两个条件,缺一不可:
-
指定 channelid 属性,我这是channelid='-101'
-
指定要获得的字段 addfields='字段1,字段2'
(2)列表页调用自定义模型(独立模型):
{dede:list pagesize='10' addfields='name,sex,tel' channelid='-101' }
<a href="\[field:arcurl/\]" target="_blank">\[field:title/\]</a>
<span>姓名:\[field:name/\] | 性别:\[field:sex/\] | 电话:\[field:tel/\]</span>
{/dede:list}
如果该栏目有内容,但是列表页没有掉出来,那就肯定是因为你的独立模型的id不为负数。
(3)内容页调用自定义模型的自定义字段数据**(独立模型)**:
直接在要调用的地方写上{dede:field.name/},其中name改为你要调用的字段名称。