drupal node機制理解

【1】根據結構的功能結構的不一樣,drupal劃分爲,node,user,comment等不一樣的結構,他們的結構是不一樣的。他們能夠做爲四個不一樣的抽象類,根據這個抽象類,分別有一套hook函數去控制實現的流程。分別有一套theme函數對應一套展現界面。node

【2】用戶、區塊和評論不是節點。在這些特定的數據結構中,爲了適應它們各自的特定目的,它們每個都擁有本身的鉤子系統。數據結構

節點是一段內容,有相同的結構,也有不一樣的部分,相同的部分用保持一致,不一樣的部分用不一個字段去標識。用面向對象的方法去理解節點,節點是一個抽象類,而博客,論壇等具體的功能性站點裏的東西能夠視做節點的實例化。函數

節點是一段內容(a piece of content),它是網站內容的基本組成單元。網站上的主要內容是由一個個節點組成的。經過觀察網站上發佈的各類內容(如新聞、博客、論壇帖子等),可發現它們都有以下的共同特性:網站

須要一個惟一的ID用於標識這個節點;3d

都有標題和內容;版本控制

須要記錄發佈時間、修改時間和發佈者。對象

用面向對象的分析問題的方法,能夠將這些內容進行抽象出一個「節點類」,節點類具備最基本的屬性,而其餘類(如博客文章、論壇主題等)均繼承自此類,增長一些專屬的屬性。所以,能夠認爲Drupal網站中的每一個節點是節點類的一個實例。blog

如圖3-1所示爲一個網站中的節點類的實例。能夠看到,每一個節點類除了標題、內容、發佈者等共同的屬性外還有專屬屬性。使用這樣的圖對網站內容進行分析是一種很好的方法。繼承

圖3-1 節點類結構圖博客

因爲節點的共性,Drupal爲節點的建立和編輯準備了相同的頁面,這樣使管理員能夠在一個頁面中完成所有節點的建立。

content type

內容類型(Content type)就是在抽象層次上對節點的一個歸類,如上面提到的新聞和博客文章,是兩種不一樣的內容類型。不一樣內容類型的文章用於不一樣的使用場景。每個節點都必須屬於某個內容類型,一個內容類型下能夠有多個節點。

Drupal默認提供兩種內容類型:頁面(Page)和故事(Story)。這二者沒有實質的區別,只是在顯示時,故事節點會顯示節點的發佈信息, 如時間和發佈者等;但頁面不會顯示。頁面常常用於存儲如「公司介紹」等介紹性文字信息;而故事一般用於存儲如「站點新聞」、「公告」等內容,且在瀏覽時可 顯示發佈者和發佈時間等信息。

Drupal的後臺管理有「內容類型」管理功能,管理員能夠建立新的內容類型並設置每一個內容類型具備哪些屬性。除標題、內容屬性外,還提供了諸如是 否支持評論、是否開啓版本控制等功能選項。同時,在內容類型的設置中能夠對節點的三個基本屬性——是否發佈在首頁、是否置頂和是否發佈——有選擇地開啓。

可是,像3.1節如圖3-1所示描述的「新聞節點類」,除了基本屬性外,還須要「文中插圖」這個額外的屬性。這時須要使用第三方模塊Content Construction Kit(簡稱爲CCK)提供的爲節點增長字段的功能。

相關文章
相關標籤/搜索