模板酷站

电脑版
提示:原网页已由神马搜索转码, 内容由www.mb5u.com提供.

完美解决dedecms内容页列表页调用自定义图片地址_DedeCms教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!
  教大家如何完美的解决dedecms内容页或列表页调用自定义图片,输出的格式如下:
<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   代表连宽、高一起输出
     同样的列表页或首页用相应的标签套进去就可以了。

查看更多 DedeCms教程  织梦模板  织梦DedeCms视频教程  织梦dedecms专题

来源:模板无忧//所属分类:DedeCms教程/更新时间:2020-04-14
最新评论:

暂时还没人评论! 快来抢沙发啊!


匿名评论
相关DedeCms教程

Cms教程搜索