后台模型字段,新建了一个图片字段,在aclis或lis等标签中调用此字段的时候,发现不能调用出来图片,类似于以下效果:HTML{dede:imgex=''widh='290'heigh=
后台模型字段,新建了一个图片字段,在arclist或list等标签中调用此字段的时候,发现不能调用出来图片,类似于以下效果:
HTML
{dede:img text='' width='290' height='290'} /uploads/sulve/image_a.png {/dede:img}
这样就不能显示图片了,这是织梦自定义图片字段的处理方式造成的。
要解决这个问题,我们必须得创建一个自定义函数。
解决方法一:
PHP
//提取图片路径
function GetImgUrl($img,$ftype=1){
if(!empty($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(!empty($imgurl)){
if($ftype==1){
$img .= $imgurl;
}
else{
$img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" />';
}
}
}
}
}
$dtp->Clear();
return $img;
}
}
调用方法如下:
HTML
[field:customer_profile function='GetImgUrl(@me,0)'/]
调用图片的信息,包括路径、宽度和高度
[field:customer_profile function='GetImgUrl(@me,1)'/]
上面这个是仅调用图片的地址
解决方法二:
如果不想用上面的方法,那么你需要对模型的此图片字段重新修改。此字段数据类型改为图片(仅网址)。
本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。
2021-02-08
2021-02-08
2021-02-08
2021-02-08
2021-02-08
2021-02-24
2021-02-08
2021-02-24