dedecms關於自定義模型(獨立模型)的首頁、列表頁、內容怎么調用?在后台自定義模型(獨立模型)的建立及自定義字段的添加比較簡單,需要注意兩點:
(1)如果某個字段需要在前台列表頁顯示,則在前台參數中勾選“使字段可以在列表的底層模板中獲得(自定義字段默認僅能在文檔模板顯示,啟用此選項將使列表查詢變慢,如無必要請不要選擇) ”;
(2)獨立模型的id一定要設置為負數,否則在列表頁無法調出數據,算是dedecms的一個bug。我本是計划修改下list標簽,后來意外發現,只要將獨立模型的id設置為負數即可正常顯示。
建好獨立模型和字段后,如何在網站調用呢?如下:
(1)首頁調用自定義模型(獨立模型):
獨立模型的調用請用arclistsg 獨立單表模型調用標簽,而非arclist文檔列表標簽。網上大部分的教程文章都是針對已有的模型添加的自定義字段而非新建的獨立模型,所以用arclist標簽是調用不出獨立模型的。
{dede:arclist typeid='10' channelid='17' addfields='test' }
<p>[field:test /]</p>
{/dede:arclist}
要獲取自定義字段的內容,必須符合兩個條件,缺一不可:
-
指定 channelid 屬性,我這是channelid='-101'
-
指定要獲得的字段 addfields='字段1,字段2'
(2)列表頁調用自定義模型(獨立模型):
{dede:list pagesize='10' addfields='name,sex,tel' channelid='-101' } <a href="[field:arcurl/]" target="_blank">[field:title/]</a> <span>姓名:[field:name/] | 性別:[field:sex/] | 電話:[field:tel/]</span> {/dede:list}
如果該欄目有內容,但是列表頁沒有掉出來,那就肯定是因為你的獨立模型的id不為負數。
(3)內容頁調用自定義模型的自定義字段數據(獨立模型):
直接在要調用的地方寫上{dede:field.name/},其中name改為你要調用的字段名稱。
(4)時間戳轉換
[field:jzsj function="Mydate('Y-m-d',@me)"/]