完美解决dedecms内容页列表页调用自定义图片地址
?教大家如何完美的解决dedecms内容页或列表页调用自定义图片,输出的格式如下:
<li>
<a href='/uploads/140420/1-140420164Z2914.jpg"color: rgb(51, 51, 51); font-family: 微软雅黑, "Microsoft Yahei", "Hiragino Sans GB", tahoma, arial, 宋体; padding: 0px; margin: 0px;">?<img src='/uploads/140420/1-140420164Z2914.jpg"color: rgb(51, 51, 51); font-family: 微软雅黑, "Microsoft Yahei", "Hiragino Sans GB", tahoma, arial, 宋体; padding: 0px; margin: 0px;"></a>
<br />
<a href='/uploads/140420/1-140420164Z2914.jpg"color: rgb(51, 51, 51); font-family: 微软雅黑, "Microsoft Yahei", "Hiragino Sans GB", tahoma, arial, 宋体; padding: 0px; margin: 0px;"></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列表list调用文章作者并指向个人主页链接
声卡驱动正常但是没有声音如何办?声卡驱动正常没声音的解决方法
英伟达显卡驱动如何退回到原来版本?英伟达显卡驱动退回到原来版
重装系统,电脑只有一个C盘如何创建分区
Defender提示错误应用程序MsMpEng.exe无法启动
电脑无法启动或仍在加载如何办?电脑无法启动或仍在加载的解决方
打印机驱动如何卸载删除?卸载打印机驱动干净的教程
电脑没网如何安装网卡驱动?教你没网如何安装网卡驱动的方法
系统32位和62位如何选择:详解它们之间的差异
电脑文件删不掉如何办?四种方法解决
任务管理器快捷键有哪些?任务管理器快捷键大全