国内外主机
测评及优惠码

织梦dede模板自定义模型 数据类型图片调用教程

(5.7sp1版测试通过)织梦DedeCMS网站内容模型普通文章调用自定义图片字段的方法:
方法一:我们首先需要创建一个自定义函数,
找到:/include/extend.func.php ,在< ?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;
}
}
保存就可
 
调用实例:
{dede:arclist  addfields=’pro_img1,pro_img2′ channelid=’1′ }
<img src=”[field:pro_img1%20function=’GetOneImgUrl(@me,1)’/]” width=”100″ height=”100″  />
<a href=”[field:pro_img2%20function=’GetOneImgUrl(@me,1)’/]”><img src=”[field:pro_img2function=’GetOneImgUrl(@me,1)’/]” width=”100″ height=”100″  /></a>
{/dede:arclist}
channelid=’1’说明一下是频道前面的id数字
‘pro_img1,pro_img2’ 这些是图片字段替换成你的就可
 
方法二:
利用正则表达式来
{dede:arclist  addfields=’pro_img1′ channelid=’1′ }
 <img src=”[field:pro_img1%20runphp=’yes’]%20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20$ndtp%20=%20new%20DedeTagParse();%20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20$ndtp->LoadSource(@me);%20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20 %20$ntag%20=%20$ndtp->GetTag(“img”);
                     @me = trim($ntag->GetInnerText());
            [/field:pro_img1]” width=”100″ height=”100″  />
{/dede:arclist}
缺点只能保存一个 优点不用去改动源核心文件
channelid和typeid区别
channelid 频道调用 是在内容模型里管理,频道名称的前面也有一个id,这个ID用 channelid调用。
Dedecms属性标签channelid和typeid的区别
这个调用需要频道里面有子栏目才可以的。
而typeid 就是纯粹的栏目调用 可以调用里面的文章
Dedecms属性标签channelid和typeid的区别
这个就是 channelid频道和typeid栏目标签调用的区别。

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《织梦dede模板自定义模型 数据类型图片调用教程》
文章链接:https://www.ibytx.com/442.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

评论前必须登录!

 

'); })();