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

softyun3年前cms教程113

 教大家如何完美的解决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    代表连宽、高一起输出
       同样的列表页或首页用相应的标签套进去就可以了。
免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

{dede:arclist}的学习心得,调用文章或者软件任何字段

基本语法:{dede:arclist typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype=...

删除文章时删除缩图和内容中大图

打开dede/inc/inc_batchup.php找到"//删除数据库的内容"在这前面加上 //删除缩略图 if($arcRow['litpic']!=""){ $dsql->Execut...

织梦dedecms列表页标题显示分页的页数,有利于seo优化

织梦dedecms列表页标题显示分页的页数,有利于seo优化关于用织梦dedecms做的网站,优化这块有个地方必须要注意一下,就是列表页,我们默认生成的每一页,他的标题、关键词、描述都是一样的,但是搜...

dede网站内容页如何调取栏目页标题和seo标题

dede网站内容页如何调取栏目页标题和seo标题 内容页调用SEO标题:在之间加入以下代码: {dede:field name='typeid' runphp='yes'}  $id=@me;  gl...

织梦dedecms编辑器上传图片怎么去掉宽度和高度限制

 在用织梦cms做响应式或者手机端网站时候,我们经常会遇到图片宽度和高度固定,而无法自适应手机端的问题。就比如你一张图片,如果你在后台的编辑器中给了固定宽高,那么你在手机端或者响应式的网站上,图片肯定...

DEDECMS时间格式汇总

1.时间格式{dede:field name='pubdate' function='strftime("%Y年%m月%d日 %H:%M:%S","@me")' /}2007年1月1日 18:30:0...