魔扣论坛

魔扣源码论坛业务
查看: 451|回复: 1

[织梦教程] 完美解决dedecms内容页列表页调用自定义图片地址

[复制链接]
  • TA的每日心情
    奋斗
    22 小时前
  • 签到天数: 2959 天

    [LV.Master]开坛老将

    7万

    主题

    227

    回帖

    27万

    积分

    管理员

    Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

    魔扣币
    745823
    贡献
    157923
    威望
    32799

    最佳新人活跃会员热心会员推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2020-4-14 23:17:51 | 显示全部楼层 |阅读模式
    魔扣币兑换比例:【 50以下 : ¥1 = 10 魔扣币 】丨【 50 - 100 :¥1 = 20 魔扣币】丨【 100以上:¥1 = 30 魔扣币 】

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    织梦dedecms调用自定义图片的时候在内容页或列表页输出的格式如下:
    <li>
    <a href='/uploads/140420/1-140420164Z2914.jpg' target='_blank'>
    <img src='/uploads/140420/1-140420164Z2914.jpg' width='253' border='0'/>
    </a>
    <br />
    <a href='/uploads/140420/1-140420164Z2914.jpg' target='_blank'></a>
    </li>
            这很难满足我们的实际需要,比如做一个幻灯片的时候会调用图集的图片,而不用默认的dedecms的图集模版,所以自己动手吧,网上查阅了很多这方面的资料,最后总结如下:
           在设置自定义字段为图片的时候一定要选“图片(仅网址)”,这样输出的格式就是
    {dede:imgtext='' width='270' height='129'}/uploads/101017/1-10101H21F54P.gif{/dede:img}
           如果自定义字段名为:name,内容页前台这样调用:
    <img src="{dede:field.name}"/>
           输出的是
    <img src="{dede:img text=''width='270' height='129'}/uploads/101017/1-10101H21F54P.gif{/dede:img}"/>
          其实是输出的时候没有相关的php函数,找到/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;      
        }  
    }  
    保存即可。
          前台内容页格式为:
    <img alt="{dede:field.title/}" src="{dede:field.name function='GetOneImgUrl(@me,1)'/}">
           看得懂的站长容易理解,@me,0   代表只输出路径,@me,0    代表连宽、高一起输出
           同样的列表页或首页用相应的标签套进去就行了。

    会员购买:>> 点击购买 << | 魔扣币购买:>> 点击购买 <<
    承接业务:服务器代维丨网站托管丨SEO
    联系客服:微信:morko-net | QQ:1367681973

    该用户从未签到

    1

    主题

    241

    回帖

    484

    积分

    中级魔扣

    Rank: 3Rank: 3

    魔扣币
    242
    贡献
    242
    威望
    0
    发表于 2020-4-15 09:04:10 | 显示全部楼层
    发发呆,回回帖,工作结束~
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 联系我们
    • 新浪微博 :
    • 在线客服 :魔扣科技 
    • 源码QQ群 :魔扣源码论坛官方总群
    • 联系邮箱 :charlin#morko.net
    • 微信扫一扫
    快速回复 返回顶部 返回列表