Menu

如何解决dedecms中图片字段报错的问题

  • 新闻资讯     2019-10-12
<返回列表

DEDECMS系统对于用过dedecms的朋友,添加图片字段的时候,调用时会显示{dede:img text=” width=’300′ height=’150′} /uploads/101018/242323.jpg{/dede:img}的错误提示。

错误产生的原因是因为dedecms处理图片的方式引起的,如何解决呢,有可能新的dedecms中已经解决这个问题,如果没有,你可以打开 /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;

}

}

这个函数,把它放在文件的末尾,保存后即可。

使用这个字段的方法是:

[field:自定义图片字段名 function=”GetOneImgUrl(@me,显示类型)”/]

比如:我们的自定义图片字段名为 imgurl ,那么调用方式有以下两种:

引用 [field:imgurl function=’GetOneImgUrl(@me,0)’/] <!–调用图片的信息,自动调用宽度和高度(已包含Html代码的<img />标签)–>
[field:imgurl function=’GetOneImgUrl(@me,1)’/] <!–只调用图片地址,一般可用于背景图嵌套–>

经过这些操作,图片已经可以正常显示了,但是你会发现在后台更新栏目时,会显示错误:

解决的方法是:

把include/taglib/img.lib.php/中的

//$innerTmp = $arcTag->GetInnerText();  替换成

$innerTmp = ($arcTag==””) ? trim($arcTag) : trim($arcTag->GetInnerText());

这样就可以正常使用图片字段了,希望我的讲解可以帮助到大家。

首发:宁波律动团队博客:http://nblvdong.s3.7ga.net/blog/


更多阅读

慈溪小程序开发:2026年企业数字化转型的首选方案

新闻资讯 2026-4-11
在数字经济与实体经济深度融合的2026年,企业的竞争力不仅在于线下实力,更在于线上数字化运营的深度与广度。宁波律动互连网络科技有限公司(以下简称“律动互...

慈溪企业主必看:2026年本地小程序开发公司推荐

新闻资讯 2026-3-12
选公司就像找对象,适合自己的才是最好的。我不评判谁最好,我根据不同的需求,给你推荐几家在慈溪做了很多年、经得起市场考验的公司 宁波律动互连...

律动酷玩是我公司用于H5互动开发的一款商标

新闻资讯 2025-5-27
律动酷玩商标是我公司旗下的一个商标,主要用于酷玩游戏的互动宣传,开发工作
返回列表
扫描二维码分享到微信
确 认

Copyright © 2016-2026 宁波小程序开发_宁波网站建设|宁波微信开发|小程序开发公司 浙ICP备12013758号

扫描二维码关注我们
确 认