DedeCMS系统自定义字段图片调用问题的解决方法

DedeCMS系统自定义字段图片调用问题的解决方法,第1张

DedeCMS系统自定义字段图片调用问题的解决方法

在Dreamweavercms官网上看到很多朋友在问:为什么首页自定义目录启用的图片字段名称不是合适的图片详细地址?为了解决这个问题,我们必须创建一个自定义函数。下面详细展示一下。

一、完成方法1)创建自定义函数

,打开/include/extend.func.php文件(注意:该文件是系统软件中嵌入的自定义函数的socket文件,用于二次开发。如果是老版本,默认设置没有这个文件,可以自己创建一个PHP文件),在最下面?>将以下功能代码添加到上一行:


复制代码编码以下:
/****************
functionGetOneimgurl
@@作用:载入自定字段名图片详细地址
*****************/
functionGetOneImgUrl($img,$ftype=1){
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==1){
$img.=$imgurl;
}
else{
$img.=‘<imgsrc=''‘.$imgurl.'''width=''‘.$width.'''height=''‘.$height.'''/>';
}
}
}
}
}
$dtp->Clear();
return$img;
}
}

复制代码如下:
/*****************
函数GetOneImgurl
@@角色:加载自定义字段名图片的详细地址
*******。>'){
$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==1){
$img。=$imgurl
}
else{
$img。='<imgsrc=“”。$imgurl。'''宽度=''。$宽度。'''高度='''。$身高。''/>;';
}
}
}
}
}
$DTP->;clear();
return$img;
}
}

储存后关掉就可以。
2)调用函数方式      问:大家创建好涵数之后,那麼这一涵数要怎样来启用呢?
答:本涵数的启用方式为:
[field:自定图片字段function='GetOneImgUrl(@me,显示信息种类)'/]
例如:大家的自定图片字段为imgurl,那麼启用方法有下列二种:
[field:imgurlfunction='GetOneImgUrl(@me,0)'/]<!–启用图片的信息内容,全自动启用总宽和高宽比(已包括Html编码的<img/>标识)–>
[field:imgurlfunction='GetOneImgUrl(@me,1)'/]<!–只启用图片详细地址,一般可用以背景嵌入–>储存起来然后关掉就好了。
2)如何调用一个函数Q:创建了一个函数之后,如何启用这个函数?
回答:这个功能的启用方式有:
[field:自定义图片字段功能='getoneimgurl(@me,显示信息类型)'/]
比如你的自定义图片字段是imgur,有两种启用方式:
[field:]!–启用图片的信息内容,全自动启用总宽高比(包括Html编码的;identification)–>
[field:imgurlfunction='GetOneImgUrl(@me,1)'/]<;!–仅启用图片的详细地址,一般可用于背景嵌入–>

二。例题测试

1)在网站后台管理中添加mockup的字段名,点击[键]-[内容mockup管理方法],点击“一般文章内容”的“更改”按钮,进入写作页面,字段名创建后切换到
,我们在升级或编辑表格时会有这个字段名。
提交了想要显示信息的图片后,保存即可。
2)前台接待已启用。原来前台启用这个字段名的方式是根据arclist标识的channelid和addfields两个主要参数来启用,这里不再赘述。但是自定义字段名称的一般方法如下:

{dede:arclistrow='2'channel='1'addfields='自定义域名1,自定义域名2'}
最低模板插入文本
{/dede:arclist}

适用于刚才这个号码,激活方式如下:

{dede:arclistrow='5′orderby='id'channelid='1′addfields='imgurl'}
<li>[field:title/][field:imgurlfunction='GetOneImgUrl(@me,0)'/]</li>
{/dede:arclist}{dede:arclistrow='5'orderby='id'channelid='1'addfields='imgurl'}
<;李>[field:title/][field:imgurlfunction='GetOneImgUrl(@me,0)'/]<;/李>
{/dede:arclist}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/773323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存