Drupal 7 教學課程二:模組, 版型, 與 entity

By tky, 7 八月, 2019

這一集的 Powtoon 影片/投影片主要是講 D7 的模組與版型的基本檔案架構,然後介紹最簡單的 entity——內容類型 (content type) 與分類 (taxonomy)。需要看步驟分解的朋友可以點這裡,看 Powtoon 的投影片模式。

每個階段都會設計手把手的「作業時間」,要求學員完成安裝特定的模組與版型,確定他們能夠理解檔案架構與 Drupal 管理選單介面中的「模組」與「外觀」兩個重要組件之間的關係。

模組的部份,選擇了安裝之後可以在模組設定頁就能夠立刻看到改變效果的 module filter;版型則選用一裝首頁就「裸奔」的 Zen 版型,讓學員理解網站的外觀改變與版型的基本框架。

內容類型 entity 則從預設的 article 與 basic page 開始教,透過 id 與欄位的差異讓學員了解什麼叫作「不同的內容類型」。之後則從建立節點時的表單 (form) 中的各種屬性選項,讓學員明白一個內容類型的節點有哪些屬性,與其他內容類型的節點有何相同(ex. 可以推薦到首頁、擁有選單連結...)與相異(ex. 可以填寫的欄位不同)的地方。

之後可以挑一個內容類型,說明最基本的「欄位設定」(field) 與「欄位顯示」(field display) 的觀念。這部份最不容易教、學生後來也很容易忘記的地方,就是每個欄位都可以有「通用屬性」(例如輸入項目數值限制)與該欄位隸屬於不同的欄位束集 (bundle) 中可以有的「自訂屬性」(例如標籤、介面工具)。

(後來的測驗與實作也顯示出這點,但這不表示學員不了解這個差別。或許是說,學員在操作電腦時很容易因為急躁而忽略這些比較細緻的說明文字。)

如果學生可以了解「內容類型」這種 entity,就可以繼續教「分類」entity。這方面,學員的反應是不太明白為什麼分類這種東西也需要有欄位的規劃。這時候就只能直接展示 drupal 強大的「分類列表頁」給同學們看,讓他們明白說 drupal 會自動提供每個分類一個特定的頁面,將所有含有該分類的內容節點依照發表時序表列出來。

透過新增主分類與次分類、在內容類型中加入新的分類引用欄位(term reference)、最後建置節點與配置分類的實作,學員可以大致了解兩種 entity 彼此如何「互相合作」與「彼此關聯」。有利於後續去學習 entity reference 或 user reference 的概念。

Area