织梦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 代表连宽、高一起输出
同样的列表页或首页用相应的标签套进去就行了。
感谢您阅读这篇完美解决织梦cms内容页列表页调用自定义图片地址文章,希望可以帮助您解决使用织梦cms途中的问题,更多相关织梦cms教程关注我们万条网吧。
文章原文链接:https://www.wantiao.net/35869.html,转载请注明出处。免责声明:本站资源均来自互联网,仅供研究学习使用,禁止违法违规使用,产生法律纠纷本站概不负责!本站信息来源于网络,版权争议与本站无关。如有侵权请邮件与我们联系处理,敬请谅解!
请先
!