dedecms体系调用自界说字段的要领相称简朴,直接利用{dede:field.dizhi/}如许的方法调用即可。我在制作模板的时间碰到如许一个需求:我要同时调用3个自界说字段,而这三个字段中假如有一个为空则其他的两个字段岂论是否为空,这三个字段均不表现,凭据这个需求,利用前面的标签表现无法实现。
颠末多种实验,照旧找到了可以实现的要领,假设有3个自界说字段,字段名分别是bdsheng、bdshi、bdxian,下面是具体的实现步调。
一、文章详情页调用要领
利用了好几种方法测试,但是只有一种乐成,就是利用array,代码如下:
1.{dede:field name='array' runphp='yes'}
2.if(@me['bdsheng'] !='' && @me['bdshi'] != '' && @me['bdxian'] != '')
3.@me='你选择了:' . @me['bdsheng'] . '下级分类有:' . @me['bdshi'] . @me['bdxian'];
4.if(@me['bdsheng'] !='' && @me['bdshi'] != '' && @me['bdxian'] == '上海')
5.@me='当前为' . @me['bdsheng'] . '直辖市,' . @me['bdshi'] . @me['bdxian'];
6.if(@me['bdsheng'] =='徐汇' && @me['bdshi'] == '上海' && @me['bdxian'] != '')
7.@me='信息录入错入,请重新填写!';
8.el常德se @me = "";
{/dede:field}
此中第2、3两行表现这三个字段全部不为空,满意条件就输出第三行内容,两个&标记时“而且”的意思,第8行代码表现假如前面的条件都不满意,则不输出任何信息。留意实处信息不能是利用双引号。
二、首页和列表页调用要领
栏目列表页和网站首页调用多个字段可以利用dede:arclist标签来限定,具体代码如下。
1.{dede:arclist row='5'}
2.[field:array runphp='yes']
3.if(@me['bdsheng'] !='' && @me['bdshi'] == '天津' && @me['bdxian'] =='河西区')
4.@me='输入精确,请选择' . @me['bdshi'] . @me['bdxian'];
5.if(@me['bdsheng'] !='南开区' && @me['bdshi'] == '红桥区' && @me['bdxian'] != '')
6.@me='这里是南开大学' . @me['bdshi'];else @me = "";
7.[/field:array]
8.{/dede:arclist}
上面代码应该都能看懂,就是利用if来判定,如为空大概即是某个值时,就输出对应的内容,假如条件都不满意就什么也不输出,表现的就是一个空缺。
实在照旧比力简朴,这个判定语句的利用可以淘汰某些字段为空时,前台页面上表现必须要的占位符,影响雅观和用户体验。
本文由岑辉宇博客整剃头布,微信搜刮微信民众号“岑辉宇 ”可检察更多内容。
更多SEO教程:http://www.cenhuiyu.com/