自定義模型的調用實際上是很簡單的,只是對於初接觸dedecms者來說,容易與其他標籤搞混淆。在使用中我們需要注意的是自定義模型的調用主要用於三個地方:在首頁、列表頁及內容頁。
1.字段需要在前臺列表頁顯示,在前臺參數中勾選使字段可以在列表的底層模板中獲得(自定義字段默認僅能在文檔模板顯示,但是啓用此選項將使列表查詢變慢,如無必要請不要選擇)。
2.獨立模型的id一定要設置爲負數,否則在列表頁無法調出數據,這算是dedecms的一個bug。
建好獨立模型和字段之後,在網站調用方法如下:
(1)首頁調用自定義模型(獨立模型):
獨立模型的調用請用arclistsg 獨立單表模型調用標籤,而非arclist文檔列表標籤。網上大部分的教程文章都是針對已有的模型添加的自定義字段而非新建的獨立模型,所以用arclist標籤是調用不出獨立模型的。
代碼如下:
{dede:arclistsg typeid='8' row='10' addfields='name,sex,tel' channelid='-101' }
[field:title/] 姓名:[field:name/] | 性別:[field:sex/] | 電話:[field:tel/]
{/dede:arclistsg}
獲取自定義字段的內容,必須符合兩個條件:
1.指定 channelid 屬性,我這是channelid='-101'
2.指定要獲得的字段 addfields='字段1,字段2'
(2)列表頁調用自定義模型(獨立模型):
代碼如下:
{dede:list pagesize='10' addfields='name,sex,tel' channelid='-101' }
[field:title/] 姓名:[field:name/] | 性別:[field:sex/] | 電話:[field:tel/]
{/dede:list}
如果該欄目有內容,但是列表頁沒有掉出來,那就肯定是因爲你的獨立模型的id不爲負數。
(3)內容頁調用自定義模型的自定義字段數據(獨立模型):
直接在要調用的地方寫上{dede:field.name/},其中name改爲你要調用的字段名稱。
另外,如果在以上方法無效時也可以試試{dede:field name='字段'}。