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

softyun3年前cms教程52

 教大家如何完美的解决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列表伪静态修改

打开inc_arclist_view.php查找 //--------------------------------- //获取动态的分页列表 //-------------------------...

DedeCms教程:百度新闻

百度新闻模块是为了生成百度所提供的新闻搜索所需的xml文件而制作的,其安装、卸载等操作已经在模块管理中有所介绍。浏览器兼容教程 百度新闻现在从原则上已经不再接受新的xml源提交,但是对旧的还是进行...

dedecms实现编辑文档自动更新主页和列表页

实用dedecms的小技巧,以往我们更新文档的时候,还要再次的生成栏目页,还有主页,很麻烦!今天教给大家一个方法,可以实现自动更新,也就是说在编辑文档之后。程序会自动进行更新。首先  使用代码编辑工具...

教你怎样去掉dede下载地址中的li标签

 在用dede做模板的时候时常会遇到模板中要求在列表页中调用下载地址 但在下载地址中会带有li这个标签 很让人心烦 下面是解决方法 。templets\system下的channel_downlink...

织梦dedecms首页调用缩略图为背景

 想把DedeCMS织梦模板首页调用缩略图为背景。这个需要配合{dede:arclist}{/dede:arclist}织梦dedecms标签使用,既可以实现把缩略图作为背景,另外还需要用到backg...

DEDECMS中Showmsg的用法及参数介绍

DEDECMS中Showmsg函数是用来显示返回的提示信息以及跳转到相应页面,但是大部分新手并不知道怎么用,今天给大家好好讲解一下,希望对你有帮助 1、先看showmsg的格式:ShowMsg($ms...