网站建设   网站建设技术   网站后端技术   网站建设CMS   dedecms  

织梦CMS常用的几种字段判断输出实例详解

人浏览  发布时间:2021-04-30

我们在使用织梦CMS制作网站时,对于某个字段,无论是默认字段还是自定义字段,偶尔会使用一些判断语句来实现我们的需求。下边列出了几种常见的需求。以及字段的判断输出实例。 第一种:织梦自定义字段,如果没有值的时候要显示指定的默认内容, {dede:field name=ziduan runphp=yes} if(@me==) { @me = ;} else { @me = div class=reda href=/.@me此处是自定义的内容/a/div; } {/dede:field} 第二种:DedeCMS判断简略标题为空时则显示完整标题 方法1,适用于内容页 {dede:field name=array runphp=yes} if (@me[shorttitle]==) @me=@me[title]; else @me=@me[shorttitle]; {/dede:field} 方法2,适用于列表页 [field:array runphp=yes] if (@me[shorttitle]==) @me=@me[title]; else @me=@me[shorttitle]; [/field:array] 第三种:对某一个字段多重判断 [field:array runphp=yes] if(@me[risklevel]==HR)@me=HR.png; else if(@me[risklevel]==D)@me=D.png; else if(@me[risklevel]==AA)@me=AA.png; [/field:array] 以上意思就是说如果查询得到的风险等级字段的取值是HR,那么将输出HR.png, 如果查询得到的风险等级字段的取值是D,那么将输出D.png,如果查询得到的风险等级字段的取值是AA,那么将输出AA.png, 这里的HR.png,只是一个字符串,代表图片文件所在的位置,你可以设置成任意的图片路径,上面的代码是一种分支条件输出语句,@me代表的就是输出变量,刚进入标签field:array时,@me代表数据库的一条记录,其数据类型是数组,我们根据其中risklevle的取值来判断,从而将@me设置成不同的值,当退出标签field:array时,@me的值就会被显示在原位置。 第四种:判断过程中需要调用别的字段。 需要在模板里做一个小判断,如果...
我们在使用织梦CMS制作网站时,对于某个字段,无论是默认字段还是自定义字段,偶尔会使用一些判断语句来实现我们的需求。下边列出了几种常见的需求。以及字段的判断输出实例。
 
第一种:织梦自定义字段,如果没有值的时候要显示指定的默认内容,
 
{dede:field name='ziduan' runphp='yes'}
 if(@me=='') { @me = '' ;}
 else { @me = "<div class='red'><a href='/.@me'>此处是自定义的内容</a></div>"; } 
{/dede:field}
第二种:DedeCMS判断简略标题为空时则显示完整标题
 
方法1,适用于内容页
 
 
{dede:field name='array' runphp='yes'}
 if (@me['shorttitle']=='') 
@me=@me['title']; 
  
else
 @me=@me['shorttitle'];
 {/dede:field}
方法2,适用于列表页
 
[field:array runphp='yes']
 if (@me['shorttitle']=='') @me=@me['title']; 
else @me=@me['shorttitle']; 
[/field:array]
第三种:对某一个字段多重判断
 
[field:array runphp='yes']
 if(@me['risklevel']=="HR")@me="HR.png"; 
else if(@me['risklevel']=="D")@me="D.png"; 
else if(@me['risklevel']=="AA")@me="AA.png";
 [/field:array]
以上意思就是说如果查询得到的风险等级字段的取值是HR,那么将输出HR.png, 如果查询得到的风险等级字段的取值是D,那么将输出D.png,如果查询得到的风险等级字段的取值是AA,那么将输出AA.png, 这里的HR.png,只是一个字符串,代表图片文件所在的位置,你可以设置成任意的图片路径,上面的代码是一种分支条件输出语句,@me代表的就是输出变量,刚进入标签field:array时,@me代表数据库的一条记录,其数据类型是数组,我们根据其中risklevle的取值来判断,从而将@me设置成不同的值,当退出标签field:array时,@me的值就会被显示在原位置。
 
第四种:判断过程中需要调用别的字段。
 
需要在模板里做一个小判断,如果文章的价格为0时直接输出其下载地址,否则直接输出购买链接,那么这个时候肯定是需要运行runphp='yes'这个功能了,下面我们来看下代码:
经过搜索发现两个方法基本上可以实现
 
1、首先把需要调用其它字段的值放在公共变量里,然后再直接调用公共变量的值,看代码
 
 
{dede:php}$GLOBALS['title']=$arc->Fields['title']{/dede:php} 
{dede:php}$GLOBALS['baidupan']=$arc->Fields['baidupan']{/dede:php} 
{dede:field.price runphp="yes"}
if(@me="0")
@me = "下载地址:".$GLOBALS['baidupan'];
else
@me = "商品(".$GLOBALS['title'].")购买链接为:XXX";
{/dede:field.xxxx}
2、直接使用name='array'将其它字段的值赋值到数组里,然后使用,看代码
 
10
{dede:field name='array' runphp='yes'}
if(@me['price']=='0' )
@me = '
<li><a class="demo" href="'.@me['baidupan'].'" target="_blank">下载:'.@me['baidupwd'].'</a></li>
';
else
@me = '
<div id="pdBuy" class="PDB2C_moban_warp" dataP="'.@me['title'].'" dataR="'.@me['price'].'"><img src="/uploads/allimg/170702/155R26021-0.gif"></div>
';
{/dede:field}
上述多处需要注意符号,单引号,双引号。
(编辑:360度神搜网)

备注:本网站资料免费下载浏览,为百度空间下载资料,需用户注册有百度账号,登陆后才可浏览下载,如有疑问联系我们免费解答。


你可能喜欢的:

友情链接
24小时服务电话:13992352808 地址:陕西省西安市,长乐西路180号 WebDesign ©2012 Corporation 360°神搜网网络科技传媒技术服务工作室 网站地图