织梦多张缩略图调用并增加一张、三张、无缩略图判断

 最近养成了用APP浏览时事政事信息的习惯,注意到有些页面有些地方出现三张、单张或无缩略图,具体参考今日头条APP、网易新闻APP等手机端。

 

结合DedeCMS做个算不上开发的教程,特别适合PHP初学者哦。

运用的是array标签,如果对该标签基础及运用不了解参考文章《织梦用array调用多个自定义字段并判断》

       一般列表页的标签如下

{dede:list}

 [field:array runphp='yes']

  php代码块;

 [/field:array]

{/dede:list}

 

增加自定义字段

依次打开

后台 -> 频道模型 -> 内容模型管理 -> 普通文章 -> 添加新字段

 

        

字段为pic1,pic2,数据类型都为图片无格式。加上默认的缩略图,一共是三张图片。

织梦多张缩略图调用并增加一张、三张、无缩略图判断

(此图片来源于网络,如有侵权,请联系删除! )

织梦多张缩略图调用并增加一张、三张、无缩略图判断

(此图片来源于网络,如有侵权,请联系删除! )

 

 

PHP判断实现思路

       新增加的两个字段为空,不输出任何内容;DedeCMS默认缩略图为空,会输出默认的/images/defaultpic.gif图片。只要判断这三个字段存不存在数值即可实现调用不同的模板及样式。该栏目列表页用{dede:list},首页、其他栏目列表或内容页需用{dede:arclist},对应的代码如下,注意双引号和单引号的问题。

  {dede:arclist addfields='pic1,pic2' channelid='1'}  [field:array runphp='yes']  $depic = '/images/defaultpic.gif'; //为减少重复代码,把模板放到变量内。  //模板1:只调用标题  $con1 = '  <a class="box01" href="' . @me['arcurl'] . '">  <h2>' . @me['title'] . '</h2>  </a>  ';  //模板2:调用标题,默认缩略图  $con2 = '  <a class="box02" href="' . @me['arcurl'] . '">  <h2>' . @me['title'] . '</h2>  <div class="cl">  <img src="' . @me['litpic'] . '"/>  </div>  </a>  ';  //模板3:调用标题,默认缩略图,pic1,pic2  $con3 = '  <a class="box03" href="' . @me['arcurl'] . '">  <h2>' . @me['title'] . '</h2>  <div class="cl">  <img src="' . @me['litpic'] . '"/>  <img src="' . @me['pic1'] .'"/>  <img src="' . @me['pic2'] . '"/>  </div>  </a>  ';  if(@me['litpic'] != $depic && @me['pic1'] !='' && @me['pic2'] !='') @me = $con3 ; //如果三种都不为空,则输出全部值  elseif(@me['litpic'] == $depic && @me['pic1'] =='' && @me['pic2'] =='') @me = $con1 ; //如果三种都为空,则输出标题  elseif(@me['pic1'] =='' || @me['pic2'] =='') @me = $con2; //如果pic1,pic2其中一个为空,则输出标题,默认缩略图  else @me = $con1; //只输出标题  [/field:array]  {/dede:arclist}

上面已有说明,初学者尽量把代码写简洁,多而重复的代码不易修改,很容易发生错误。比如:'单引号'、"双引号"的运用、字符和变量的连接符号(.)等。以上具体样式根据自己写吧。织梦DedeCMS多张缩略图总结

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容