歡迎光臨站殼網!我們為您提供最優質的建站資源!

當前位置: 站殼網>建站教程>網站建設教程> 織夢dede網站內容模型普通文章調用自定義圖片字段的方法
分享本文到:

織夢dede網站內容模型普通文章調用自定義圖片字段的方法

發布時間:01/04 來源:www.zhankr.net 瀏覽: 關鍵詞:
 織夢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;  

           }  

   } 

這個自定義函數使用dedecms標簽調用方法

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

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

[field:litpic2 function='GetOneImgUrl(@me,0)'/] <!–調用圖片的信息,自動調用寬度和高度(已包含Html代碼的<img />標簽)–>  

[field:itpic2 function='GetOneImgUrl(@me,1)'/] <!–只調用圖片地址,一般可用于背景圖嵌套–> 

模型字段添加

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



創建好字段以后,我們在增加或編輯文檔時候,就會有這個添加的自定義圖片字段了。

在前臺調用我們可以使用下面的標簽

大體的自定義字段的方法是這樣的:

{dede:arclist row=’2′ channeld=’1′ addfields=’自定義字段1,自定義字段2′}  

底層模板  

{/dede:arclist} 

運用到我們剛才的這個函數,調用方法為:

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

{dede:arclist row='3' orderby=click type='image.' typeid='3' titlelen='28' addfields='litpic2' channelid='1'}
      <li><a href='[field:arcurl/]'><img src='[field:litpic2 function='GetOneImgUrl(@me,1)'/]' width='180' height='280' border='0' alt='[field:fulltitle/]' /></a><span></span><strong><a href="[field:arcurl/]l">[field:title/]</a></strong><em>[field:global.autoindex/]</em></li>
{/dede:arclist}

這個標簽還是蠻有用的。需要記住了哦!


解決調用圖片不顯示方法:


1、 織夢自定義字段如果設置是圖片類型,那么前臺就會顯示出下面這種形式的內容:

  {dede:img text='' width='270' height='129'} /uploads//1-H21F54P.gif {/dede:img}

  非常明顯,這樣是不能正確顯示的,這是織夢自定義圖片字段的處理方式造成的。要解決這個問題,我們必須得創建一個自定義函數,其實現方式為:修改/include/extend.func.php 文件,如上面修改函數。



2、有些站長在使用織夢自定義圖片時,常常出現圖片顯示不正常的情況,我們來剖析解決這個問題
  
  問題描述:
  
  自定義模型為dede_addongame
  
  頻道ID為17
  
  -----------------自定義字段-------------------------
  
  游戲名稱:gamename(vchar)
  
  游戲幻燈圖:flashpic(圖片)
  
  推薦圖片:bigpic(圖片)
  
  -----------------HTML代碼-------------------------
  
  {dede:arclist channelid=‘17’ addfields='gamename,bigpic' row='1'}
  
  [field:gamename/]</br>
  
  [field:bigpic/]</br>
  
  {dede:arclist/}
  
  -----------------生成網頁-------------------------
  
  超級瑪麗
  
  {dede:img text='' width='320' height='240'}upload/200906/maria.jpg{/dede:img}
  
  可見,生成的HTML代碼無法正常顯示自定義圖片。
  
  解決辦法:
  
  第一步:將自定義字段“圖片”類型改為“圖片(僅地址)”類型。
  
  第二部:在{dede:arclist channelid=‘17’ addfields='gamename,bigpic' row='1'}中添加一句listtype='image'就可以解決問題了。
  
  改后的代碼{dede:arclist channelid=‘17’ addfields='gamename,bigpic' row='1'  listtype='image'}...{/dede:arclist}。
  
  這樣就可以搞定問題了! 

當前文章網址:http://www.ybksxs.tw/jiaocheng/wzjs/201601/1469.html 轉載請注明出處!

共有269人閱讀,期待你的評論!發表評論
昵稱: 網址: 驗證碼: 點擊我更換圖片
最新評論
頂部
爱彩乐江苏快三