织梦自定义图片字段调用的问题解决
织梦dedecms做站过程中碰到这样I.个问题,找到解决办法收藏分享:为什么在首页用自定义列表调用出来的图片字段不是正确的图片地址,而是类似于:引用
{dede:imgtext=width=IIVII0height=I.IIIX}/uploads/I.0I.0I.VII/I.-I.
更多精彩就在: 51免费论文网|www.jxszl.com
0I.0I.HIII.FVIVP.gif{/dede:img}
这样的格式!
非常明显,这样是不能正确显示的,这是织梦自定义图片字段的处理方式造成的.要解决这个问题,我们必须得创建I.个自定义函数,其实现方式为:
I..实现方法I.)创建自定义函数
打开/include/extend.func.php文件(注:这个文件就是系统预留的自定义函数接口文件,主要用于II次开发用的.如果你是老版本,默认没有这个文件,自己创建I.个PHP文件即可),在最下面的?>上I.行加入以下函数代码:
折叠PHP代码复制内容到剪贴板
引用
functionGetOneImgUrl($img,$ftype=I.){
if($img<>){
$dtp=newDedeTagParse();
$dtp->LoadSource($img);
if(is_array($dtp->CTags)){
foreach($dtp->CTagsas$ctag){
if($ctag->GetName()==img){
$width=$ctag->GetAtt(width);
$height=$ctag->GetAtt(height);
$imgurl=trim($ctag->GetInnerText());
$img=;
if($imgurl!=){
if($ftype==I.){
$img.=$imgurl;
}
else{
$img.=;
}
}
}
}
}
$dtp->Clear();
return$img;
}
}
保存后关闭即可.
II)函数调用方法
问:我们创建好函数以后,那么这个函数要如何来调用呢?
答:本函数的调用方法为:
[field:自定义图片字段名function="GetOneImgUrl(@me,显示类型)"/]
比如:我们的自定义图片字段名为imgurl,那么调用方式有以下两种:
引用
[field:imgurlfunction=GetOneImgUrl(@me,0)/]
[field:imgurlfunction=GetOneImgUrl(@me,I.)/]
原文链接:http://www.jxszl.com/biancheng/dedecms/76501.html