1. <u id="epx8e"></u>
        <u id="epx8e"><sub id="epx8e"></sub></u>

        
        
        <video id="epx8e"><big id="epx8e"></big></video>

        <i id="epx8e"><bdo id="epx8e"><delect id="epx8e"></delect></bdo></i>
        0712-2888027 189-8648-0214
        微信公眾號

        孝感風信網絡科技有限公司微信公眾號

        當前位置:主頁 > 技術支持 > DedeCMS > DedeCMS自定義圖片字段調用的有關問題解決{dede:img .}

        DedeCMS自定義圖片字段調用的有關問題解決{dede:img .}

        時間:2023-11-04來源:風信官網 點擊: 516次

        做站過程中碰到這樣一個問題,找到解決辦法收藏分享:為什么在首頁用自定義列表調用出來的圖片字段不是正確的圖片地址,而是類似于:

        引用

        {dede:img text='' width='270' height='129'} /uploads/101017/1-10101H21F54P.gif {/dede:img}
        這樣的格式!

        非常明顯,這樣是不能正確顯示的,這是織夢自定義圖片字段的處理方式造成的。要解決這個問題,我們必須得創建一個自定義函數,其實現方式為:

        一、實現方法

        1)創建自定義函數

        打開 /include/extend.func.php 文件(注:這個文件就是系統預留的自定義函數接口文件,主要用于二次開發用的。如果你是老版本,默認沒有這個文件,自己創建一個PHP文件即可),在最下面的 >上一行加入以下函數代碼:

        折疊PHP 代碼復制內容到剪貼板

        引用

         

        1. function GetOneImgUrl($img,$ftype=1){
        2.   if($img $amp;<amp;$gt; ''){=""  ="" <="" li="">
        3.     $dtp = new DedeTagParse();
        4.     $dtp->LoadSource($img);
        5.     if(is_array($dtp->CTags)){
        6.       foreach($dtp->CTags as $ctag){
        7.         if($ctag->GetName()=='img'){
        8.           $width = $ctag->GetAtt('width');
        9.           $height = $ctag->GetAtt('height');
        10.           $imgurl = trim($ctag->GetInnerText());
        11.           $img = '';
        12.           if($imgurl != ''){
        13.             if($ftype==1){
        14.               $img .= $imgurl;
        15.             }
        16.             else{
        17.               $img .= '<img src="'.$imgurl.'" width="'.$width.'" height="'.$height.'" /$amp;>apos;$;
        18.             }
        19.           }
        20.         }
        21.       }
        22.     }
        23.     $dtp->Clear();
        24.     return $img;
        25.   }
        26. }

        保存后關閉即可。

        2)函數調用方法

        問:我們創建好函數以后,那么這個函數要如何來調用呢?

        答:本函數的調用方法為:

        [field:自定義圖片字段名 function="GetOneImgUrl(@me,顯示類型)"/]

        比如:我們的自定義圖片字段名為 imgurl ,那么調用方式有以下兩種:

        引用

        [field:imgurl function='GetOneImgUrl(@me,0)'/] <!--調用圖片的信息,自動調用寬度和高度(已包含Html代碼的<img />標簽)-->
        [field:imgurl function='GetOneImgUrl(@me,1)'/] <!--只調用圖片地址,一般可用于背景圖嵌套-->
        二、示例演示

        1)模型字段添加

        進入網站后臺,點擊[核心]——[內容模型管理],點擊“普通文章”的“更改”按鈕,進入編輯界面,切換到“字段管理”選項,點擊“添加新字段”,如圖:

        725x647

        創建好字段以后,我們在增加或編輯文檔時候,那么就會有這個字段了,如圖:

        744x638

        上傳好你要顯示的圖片以后,保存即可。

        2)前臺調用

        原本我們前臺調用這個字段的方法,就是通過arclist標簽的 channelid 與 addfields 兩個參數來配合調用(點擊查看arclist的標簽詳解),這里不再重復的一一熬述。但大體的自定義字段的方法是這樣的:

        引用

        {dede:arclist row='2' channeld='1' addfields='自定義字段1,自定義字段2'}
        底層模板 insertext
        {/dede:arclist}
        運用到我們剛才的這個函數,調用方法為:

        折疊XML/HTML 代碼復制內容到剪貼板

        引用

         

        1. {dede:arclist row='5' orderby='id' channelid='1' addfields='imgurl'}
        2. <li>[field:title/][field:imgurl function='GetOneImgUrl(@me,0)'/]</li>
        3. {/dede:arclist}

        好了,我們來看一下前臺的效果圖:

        613x398

        好了,如果大家還有不懂的地方,歡迎留言。

        熱門關鍵詞: DedeCMS 圖片字段調用 {dede:img .}
        欄目列表
        推薦內容
        熱點內容
        展開
        亚洲AV无码乱码国产精品桃色_国产欧美亚洲精品第二区软件_精品亚洲AV无码国产一区在线_老熟妇乱子伦中文观看_日韩 欧美 亚洲 精品 少妇_日本按摩高潮A级中文字幕免费观看