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

softyun3年前cms教程70

 教大家如何完美的解决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技巧,让未审核内容的更新时间为当前时间.

DEDECMS小技巧,让未审核内容的更新时间为当前时间.先说下为什么会用到他,现在很多站长做站都是先采集N多内容,然后每天审核一部分,但是审核的时候,那个发布时间不是最新的,还要手动去修改,很麻烦,浪...

织梦dedecms修改突破列表只能生成50页

dedecms织梦网站生成自由列表页的时候也是有数量限制的,织梦默认的最大生成页数就是50页,如果你的网站自由列表页超过50页,想要生成的话还要修改最大页数值才行。我们要怎么样才能突破dede列表生成...

防止织梦dedecms被挂黑链的几个要点

今天教给大家一些为防止织梦dedecms被挂黑的几个要点:,希望能给各位织梦爱好者们带来帮助,总共分四点:一、按织梦官方公布的安全目录设置一次,这些一般只适用于使用独立服务器的站长,因为在虚拟主机里很...

dedecms中一问一答式调用问答模块问与答简介调用问答系统代码

织梦dedecms中一问一答式调用问答模块问与答简介调用问答系统代码:{dede:sql sql="select dede_ask.id,dede_ask.title,dede_askanswer.c...

默认隐藏部分内容,点击展开更多JS代码

 织梦dedecms这个js适合列表页或首页模板,不仅可以解决页面过长,又有利于搜索引擎抓取足够多的内容。两个部分分享给大家:html部分:!DOCTYPE HTML> <html>...

DedeCms 万能安全防护代码

为了让大家的CMS更安全,有需要的手工在config_base.php里加上打开config_base.php 找到//禁止用户提交某些特殊变量$ckvs = Array('_GET','_POST'...