主页 >
帮助中心 >
源码教程 >
dedecms >
DEDECMS 自定义字段有则显示,没有则不显示
点击: 2次
时间:2018-07-12 09:25:29
<p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
DEDE在文章列表文章没有缩略图的不显示图片,有的则显示缩略图。解决在文章列表文章没有缩略图的不显示图片,有的则显示缩略图在5.3最开始的版本。好象是有这个功能的。<br/>
就是在列表里。。如果改文章没有缩略图则不显示默认的 没有缩略图的土片。如果有则显示缩略图</p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
但在后续的升级过程中。官方把这个功能修改掉了。。<br/>
不知道是有意还是无意的<br/>
我自己刚好需要这样来排。。看到有些站长也在求。。</p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
研究了下。。可以实现。。</p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
先看代码。官方列表页下关于缩略图的代码 默认的是<br/></p><pre class="brush:html;toolbar:false">[field:array runphp='yes']@me = (empty(@me['litpic']) ? "" : "
"); [/field:array]</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
把它改成<br/></p><pre class="brush:html;toolbar:false">[field:array runphp='yes']@me = (strpos(@me['litpic'],'defaultpic') ? "" : "
"); [/field:array]</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;"><br/>
我猜是官方在添加文章的时候,即使每加缩略图,也会默认设置一个图片 <br/>
所以用empty来判断是不行的。。因为它不会为空。。<br/>
<br/></p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
DEDE在文章列表文章没有缩略图的不显示图片,有的则显示缩略图</p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;"><br/>
自定义字段的调用方法,有数据则显示无数据则不显示(备注:limit='3,1'意思是从第4条开始调用,只调用1条):<br/></p><pre class="brush:html;toolbar:false">{dede:arclist row='1' titlelen='24' orderby='id' idlist='' limit='3,1'}
[field:array runphp='yes'] if(@me['pic11']==''){ @me = ''; }else{ @me = '
';
}[/field:array][field:title/]{/dede:arclist}</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
</p><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
列表,如果短标题没有就显示其他字段:<br/></p><pre class="brush:html;toolbar:false">[field:array runphp='yes'] if (@me['shorttitle']=='') @me=@me['arcurl'];else @me=@me['shorttitle'];[/field:array]</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
列表,totalprice字段有则显示,无则显示123:<br/></p><pre class="brush:html;toolbar:false">[field:array runphp='yes'] if (@me['totalprice']=='') @me='123';else @me=@me['totalprice'];[/field:array]</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;"><br/>
内容页,有则显示无则不显示:<br/></p><pre class="brush:html;toolbar:false">{dede:field name='lpic1' runphp='yes'} if(@me == "") @me = "style='display:none'";else @me = ""; {/dede:field}</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;">
列表页,如果新闻正文有内容则显示标题链接,无内容则不显示标题链接(不可点击):<br/></p><pre class="brush:html;toolbar:false">[field:array runphp='yes'] if (@me['body']=='') @me=@me['title'];else{ @me = '
'.@me['title'].'
';}[/field:array]</pre><p style="margin: 0px; padding: 15px 0px 0px; text-indent: 2em; color: rgb(51, 51, 51); font-family: Tahoma, Arial, 宋体, Verdana, Helvetica, sans-serif; font-size: 14px;"><br/></p>