• 售前

  • 售后

热门帖子
入门百科

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

[复制链接]
当当当当裤裆坦 显示全部楼层 发表于 2021-8-19 19:14:28 |阅读模式 打印 上一主题 下一主题
我们在使用织梦CMS制作网站时,对于某个字段,无论是默认字段照旧自界说字段,偶然会使用一些判定语句来实现我们的需求。下边列出了几种常见的需求。以及字段的判定输出实例。
第一种:织梦自界说字段,假如没有值的时间要表现指定的默认内容,
  1. {dede:field name='ziduan' runphp='yes'}
  2. if(@me=='') { @me = '' ;}
  3. else { @me = "<div class='red'><a href='/.@me'>此处是自定义的内容</a></div>"; }
  4. {/dede:field}
复制代码
第二种:DedeCMS判定大抵标题为空时则表现完整标题
方法1,适用于内容页
  1. {dede:field name='array' runphp='yes'}
  2. if (@me['shorttitle']=='')
  3. @me=@me['title'];
  4. else
  5. @me=@me['shorttitle'];
  6. {/dede:field}
复制代码
方法2,适用于列表页
  1. [field:array runphp='yes']
  2. if (@me['shorttitle']=='') @me=@me['title'];
  3. else @me=@me['shorttitle'];
  4. [/field:array]
复制代码
第三种:对某一个字段多重判定
  1. [field:array runphp='yes']
  2. if(@me['risklevel']=="HR")@me="HR.png";
  3. else if(@me['risklevel']=="D")@me="D.png";
  4. else if(@me['risklevel']=="AA")@me="AA.png";
  5. [/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、起首把需要调用别的字段的值放在公共变量里,然后再直接调用公共变量的值,看代码
  1. {dede:php}$GLOBALS['title']=$arc->Fields['title']{/dede:php}
  2. {dede:php}$GLOBALS['baidupan']=$arc->Fields['baidupan']{/dede:php}
  3. {dede:field.price runphp="yes"}
  4. if(@me="0")
  5. @me = "下载地址:".$GLOBALS['baidupan'];
  6. else
  7. @me = "商品(".$GLOBALS['title'].")购买链接为:XXX";
  8. {/dede:field.xxxx}  
复制代码
2、直接使用name='array'将别的字段的值赋值到数组里,然后使用,看代码
  1. {dede:field name='array' runphp='yes'}
  2. if(@me['price']=='0' )
  3. @me = '
  4. <li><a class="demo" href="'.@me['baidupan'].'" target="_blank">下载:'.@me['baidupwd'].'</a></li>
  5. ';
  6. else
  7. @me = '
  8. <div id="pdBuy" class="PDB2C_moban_warp" dataP="'.@me['title'].'" dataR="'.@me['price'].'"><img src="/uploads/allimg/170702/155R26021-0.gif"></div>
  9. ';
  10. {/dede:field}
复制代码
上述多处需要注意符号,单引号,双引号。
以上就是本文的全部内容,渴望对大家的学习有所帮助,也渴望大家多多支持草根技术分享。

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作