各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案

Str Tom,为分享PHP技术和解决方案,贡献一份自己的力量!
收藏本站(不迷路),每天更新好文章!
当前位置:首页 > CMS教程 > dedecms

完美解决dede内容页列表页调用自定义图片地址

管理员 2016-03-02
dedecms
114
dede调用自定义图片

       dede调用自定义图片的时候在内容页或列表页输出的格式如下:

<li><a href='/uploads/140420/1-140420164Z2914.jpg' target='_blank'> <img src='/uploads/140420/1-140420164Z2914.jpg' width='253' border='0'/></a><br /><a href='/uploads/140420/1-140420164Z2914.jpg' target='_blank'></a></li>

        这很难满足我们的实际需要,比如做一个幻灯片的时候会调用图集的图片,而不用默认的dedecms的图集模版,所以自己动手吧,网上查阅了很多这方面的资料,最后总结如下:

       在设置自定义字段为图片的时候一定要选“图片(仅网址)”,这样输出的格式就是

{dede:imgtext='' width='270' height='129'}/uploads/101017/1-10101H21F54P.gif{/dede:img} 

       如果自定义字段名为:name,内容页前台这样调用:

<img src="{dede:field.name}"/>

       输出的是

<img src="{dede:img text=''width='270' height='129'}/uploads/101017/1-10101H21F54P.gif{/dede:img}"/>

      其实是输出的时候没有相关的php函数,找到/include/extend.func. php

     在最下面复制以下代码(?>前面)

function GetOneImgUrl($img,$ftype=1){      if($img <> ''){          $dtp = new DedeTagParse();          $dtp->LoadSource($img);          if(is_array($dtp->CTags)){              foreach($dtp->CTags as $ctag){                if($ctag->GetName()=='img'){                      $width = $ctag->GetAtt('width');                      $height = $ctag->GetAtt('height');                      $imgurl = trim($ctag->GetInnerText());                      $img = '';                      if($imgurl != ''){                          if($ftype==1){                              $img .= $imgurl;                          }                          else{                              $img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" />';                          }                      }                  }              }          }          $dtp->Clear();          return $img;          }  }  

保存即可。

      前台内容页格式为:

 <img alt="{dede:field.title/}" src="{dede:field.name function='GetOneImgUrl(@me,1)'/}">

       看得懂的站长容易理解,@me,0   代表只输出路径,@me,0    代表连宽、高一起输出

       同样的列表页或首页用相应的标签套进去就行了。


本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关推荐

扫码关注

qrcode

QQ交谈

回顶部