在DedeCMS中,使用arclist标签调用自定义字段,可以通过以下方式:,,“html,{dede:arclist typeid='栏目ID' row='10'},[field:diyname /],{/dede:arclist},
`,,将
[field:diyname /]`替换为你的自定义字段名称。
在DEDECMS中,使用arclist标签下调用自定义字段是一种常见的需求,通过这种方式,可以实现更加灵活和丰富的内容展示,下面将详细解释如何在DEDECMS中使用arclist标签来调用自定义字段。
基本概念
在DEDECMS中,自定义字段通常用于扩展默认的频道模型,以适应特定的内容需求,这些自定义字段可以包括文本、图片、链接等多种类型,而arclist标签是DEDECMS中用于生成列表的一种标签。
实现方法
要在arclist标签下调用自定义字段,需要满足以下两个条件:
1、指定channelid属性:这里的channelid是指自定义模型的ID,而不是栏目ID。
2、指定要获得的从表字段:通过addfields参数来指定需要获取的自定义字段,多个字段之间用逗号分隔。
具体步骤
1、添加自定义字段:需要在后台的内容模型管理中为相应的频道模型添加自定义字段,在添加字段时,确保勾选“使字段可以在列表的底层模板中获得”选项,这样这些字段才能在arclist标签中被调用。
2、编写arclist标签:在模板文件中,使用arclist标签并指定channelid和addfields参数,如果要调用名为“stitle”和“author”的自定义字段,可以使用以下代码:
“`html
{dede:arclist titlelen=’80’ orderby =’pubdate’ row=’5′ addfields=’stitle,author’ channelid=’1′}
[field:description function="cn_substr(@me,320)"/]…{/dede:arclist}
“`
3、显示自定义字段:在arclist标签内部,可以通过[field:自定义字段名]的方式调用自定义字段,[field:stitle]和[field:author]分别调用了“stitle”和“author”字段。
注意事项
性能考虑:启用自定义字段在列表模板中的显示会使得查询变慢,因此在没有必要的情况下,请谨慎选择此选项。
多字段支持:如果需要调用多个自定义字段,只需在addfields参数中用逗号分隔即可。
PHP代码调用:除了直接使用arclist标签外,还可以通过PHP代码来实现自定义字段的调用,这在某些复杂场景下可能会更加灵活。
FAQs
如何在首页和列表页调用自定义字段?
在首页,使用arclist标签并指定channelid和addfields参数;在列表页,使用dede:list标签并指定addfields参数,无需channelid="模型ID",根据自定义字段所在的内容模型填写即可。
如何通过PHP代码实现自定义字段的调用?
可以在arclist标签内使用[field:id runphp="yes"],然后编写DedeSQL查询语句来获取自定义字段的值,这种方法适用于需要更复杂的逻辑处理的情况。
通过上述方法和步骤,您可以在DEDECMS中灵活地使用arclist标签来调用自定义字段,以实现更加丰富和个性化的内容展示。
参数 |
描述 |
示例 |
arclist |
typeid=类别ID |
根据类别ID获取文章列表 |
{dede:arclist typeid='1'} |
arclist |
flag=’c’ |
获取指定栏目的文章列表 |
{dede:arclist flag='c'} |
arclist |
row=’10’ |
设置每页显示的文章数量 |
{dede:arclist row='10'} |
arclist |
titlelen=’20’ |
设置标题的长度 |
{dede:arclist titlelen='20'} |
arclist |
listtemp=’自定义模板文件’ |
设置文章列表的模板文件 |
{dede:arclist listtemp='mylist.dwt'} |
arclist |
filetemp=’自定义文件模板’ |
设置文章文件的模板文件 |
{dede:arclist filetemp='myfile.dwt'} |
arclist |
addtemp=’自定义附加模板’ |
设置文章附加模板文件 |
{dede:arclist addtemp='myadd.dwt'} |
arclist |
typeid=’所有类别’ |
获取所有类别的文章列表 |
{dede:arclist typeid='0'} |
arclist |
typeid=’当前类别’ |
获取当前页面的文章列表 |
{dede:arclist typeid='@me'} |
arclist |
orderby=’id’ |
设置文章排序方式(如id,title等) |
{dede:arclist orderby='id'} |
arclist |
orderway=’desc’ |
设置排序方式(asc升序,desc降序) |
{dede:arclist orderway='desc'} |
arclist |
channelid=’频道ID’ |
获取指定频道的文章列表 |
{dede:arclist channelid='1'} |
arclist |
tagid=’标签ID’ |
根据标签ID获取文章列表 |
{dede:arclist tagid='1'} |
arclist |
keyword=’关键字’ |
根据关键字搜索文章列表 |
{dede:arclist keyword='关键字'} |
arclist |
arcsize=’文章大小’ |
设置文章大小的单位(如:’KB’或’B’) |
{dede:arclist arcsize='KB'} |
arclist |
arctype=’文章类型’ |
根据文章类型获取文章列表 |
{dede:arclist arctype='article'} |
arclist |
mtime=’最后修改时间’ |
根据最后修改时间获取文章列表 |
{dede:arclist mtime='30'} |
arclist |
votetype=’投票类型’ |
根据投票类型获取文章列表 |
{dede:arclist votetype='点赞'} |
arclist |
day=’天数’ |
根据指定天数内的文章获取列表 |
{dede:arclist day='30'} |
arclist |
channelmodel=’频道模型’ |
根据频道模型获取文章列表 |
{dede:arclist channelmodel='2'} |
arclist |
channelmodel=’0′ |
获取所有频道模型的文章列表 |
{dede:arclist channelmodel='0'} |
arclist |
only=’true’ |
只显示有内容的文章 |
{dede:arclist only='true'} |
arclist |
isonly=’true’ |
只显示有内容的文章 |
{dede:arclist isonly='true'} |
arclist |
isdefault=’true’ |
显示默认内容 |
{dede:arclist isdefault='true'} |
arclist |
isvirtual=’true’ |
显示虚拟文章 |
{dede:arclist isvirtual='true'} |
arclist |
isrecommend=’true’ |
显示推荐文章 |
{dede:arclist isrecommend='true'} |
arclist |
isslide=’true’ |
显示幻灯片文章 |
{dede:arclist isslide='true'} |
arclist |
isimage=’true’ |
显示有图片的文章 |
{dede:arclist isimage='true'} |
arclist |
isdown=’true’ |
显示下载文章 |
{dede:arclist isdown='true'} |
arclist |
ismake=’true’ |
显示制作中的文章 |
{dede:arclist ismake='true'} |
arclist |
islastpost=’true’ |
显示最后发布的文章 |
{dede:arclist islastpost='true'} |
arclist |
isfirst=’true’ |
显示第一篇文章 |
{dede:arclist isfirst='true'} |
arclist |
channeltype=’1′ |
设置频道类型(1为列表页,2为内容页) |
{dede:arclist channeltype='1'} |
arclist |
readmodule=’阅读模型ID’ |
设置阅读模型ID |
{dede:arclist readmodule='1'} |
arclist |
votemodule=’投票模型ID’ |
设置投票模型ID |
{dede:arclist votemodule='1'} |
arclist |
pagesize=’每页显示分页数’ |
设置每页显示的分页数 |
{dede:arclist pagesize='10'} |
arclist |
pagesize=’0′ |
不显示分页 |
{dede:arclist pagesize='0'} |
arclist |
pagesize=’1′ |
只显示第一页 |
{dede:arclist pagesize='1'} |
arclist |
pagesize=’2′ |
只显示前两页 |
{dede:arclist pagesize='2'} |
arclist |
pagesize=’all’ |
显示所有分页 |
{dede:arclist pagesize='all'} |
arclist |
pagesize=’20’ |
显示前20页 |
{dede:arclist pagesize='20'} |
arclist |
pagesize=’100′ |
显示前100页 |
{dede:arclist pagesize='100'} |
arclist |
pagesize=’200′ |
显示前200页 |
{dede:arclist pagesize='200'} |
arclist |
pagesize=’500′ |
显示前500页 |
{dede:arclist pagesize='500'} |
arclist |
pagesize=’1000′ |
显示前1000页 |
{dede:arclist pagesize='1000'} |
arclist |
pagesize=’all’ |
显示所有分页 |
{dede:arclist pagesize='all'} |
arclist |
pagesize=’9999′ |
显示所有分页 |
{dede:arclist pagesize='9999'} |
arclist |
pagesize=’10000′ |
显示所有分页 |
{dede:arclist pagesize='10000'} |
arclist |
pagesize=’9999999′ |
显示所有分页 |
{dede:arclist pagesize='9999999'} |
arclist |
pagesize=’10000000′ |
显示所有分页 |
{dede:arclist pagesize='10000000'} |
注意:自定义字段调用通常需要使用DedeCMS的Tag模板标签功能,以下是如何在arclist
标签下调用自定义字段的示例:
{dede:arclist}
{dede:field name='my_custom_field'/}
{dede:arclist}
在这个例子中,my_custom_field
是自定义字段的名称,它需要在文章内容管理系统中定义,使用{dede:field name='字段名称'/}
标签可以在文章列表中显示该自定义字段的值。