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

dede调用自定义图片的时候在内容页或列表页输出的格式如下: li a href=/uploads/140420/1-140420164Z2914.jpg target=_blankimg src=/uploads/140420/1-140420164Z2914.jpg width=253 border=0//a br / a href=/uploads/140420/1-140420164Z2914.jpg target
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    代表连宽、高一起输出

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


本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

现在许多网站使用了SSL技术,网站采用https链接,我们在复制https链接网站的内容,发现图片无法本地化,那么我们想要将这些图片本地化,要怎么操作呢? 第一步: 找到dede/inc/inc_archives_functions.php (注:前边红色的dede目录是您的后台目录) 定位到
大家都知道,Discuz程序在发文章时有个【隐藏】功能,可以限制这个隐藏内容供某些级别的会员查看。 在织梦模板中,做些改动,也是可以实现的。例如:电话号码,下载地址等等。 前提是开启会员功能,已经有了自定义字段。 一、建立文件 ajax_loginsta_c.php:
dedecms织梦dede:arclist按照自定义字段的条件调用相关文章,这对于想要在首页调用某个自定义字段的文章的同学来讲,非常不错 打开 /include/taglib/arclist.lib.php 找到: //关键字条件 在它的上面加入 //自定义字段关键字条件 if($ctag-GetAtt(addk)!=) {
我们在安装织梦dedecms后,访问网站后面出现了一个index.html,很多人想去掉这个index.html,要怎么操作呢?网上很多教程说是要改php文件,其实并不需要,只要设置好空间的网站默认首页即可。 下面我们以西数和海会的虚拟主机为例子,在空间面板找到如下地方
我们大家都知道Linux环境php虚拟主机一直都是对大小写敏感的,今天小编将给大家介绍一下如何实现dedecms织梦网站搜索不分大小写的问题。 如何实现DeDecms织梦网站搜索不分大小写的问题问题分析:织梦V5.7版本,编码为GBK,在使用其搜索模块时,出现了关键字
大家可能收到过这样的短信:根据《非经营性互联网信息服务备案管理方法》规定,如果未在网站底部添加备案号,被相关部门核查出来将处以五千元以上一万元以下罚款。这是中国工业和信息化部对国内网站的整顿,响应国家政策,网站及时按要求添加备案号和链接。