什麼是 WordPress 的分類法 Taxonomy ? 該如何自訂 Taxonomy?

在 WordPress 的世界裡建議要先了解 Post Type 後再來了解分類法 Taxonomy,如果你還不了解什麼是 Post Type 建議你先閱讀這篇文章:什麼是 WordPress 的 Post Type? 該如何自訂 Post Type?

在 WordPress 中什麼是分類法 Taxonomy?

分類法故名思義就是「用來分類事物的方法」,在 WordPress 預設安裝中就包含了兩個大家最熟知的分類法:「文章分類 (category)」與「文章標籤 (tag)」,這兩個分類法用於分類「文章 (post)」這個 Post Type。假設我們在分類底下新增了「財經」、「旅遊」兩個分類,我們會稱呼這些分類為 Term。

值得一提的是分類法在 WordPress 中分為兩種形式,可分為有階層關係 (Hierarchical) 以及無階層關係的分類法。文章分類預設為有階層關係,即有父分類、子分類這樣的架構存在,但文章標籤則沒有父子階層的架構。這個階層關係會影響在後台的使用者介面,如果是有階層關係的分類法,在後台會是採用勾選的方式做選擇,如果是無階層關係的分類法在後台則是任意輸入的文字框。

該如何自訂分類法 Taxonomy?

在 WordPress 自訂分類法 Taxonomy 與自訂 Post Type 一樣,大多數可以自訂 Post Type 的外掛通常都具備有自訂分類法的功能,例如 Custom Post Type UIJetEngine...等。

如果你想要使用程式碼自訂 Taxonomy,那麼你可以參考 WordPress 官方文件的 register_taxonomy 方法了解有哪些參數設定可以使用,如果你想要更快的了解參數設定可以考慮使用這個 Taxonomy 產生器來快速的產生程式碼。產生的程式碼可以透過程式碼片段外掛放入或是放入到佈景主題的 functions.php 裏。

自訂分類法後,預設會在 WordPress 系統底下新增以下路徑:

路徑說明
/{post_type_slug}/{taxonomy_slug}/分類的列表頁 (Archive 頁面)
自訂 Taxonomy 後預設增加的頁面

示例:使用 Custom Post Type UI 自訂 Taxonomy 分類法

我們這邊試著想像我們是一家旅行社,首先我們可以先新增一個 Post Type 「旅遊行程 (itinerary)」後,再新增一個分類法「國家」用來分類不同的旅遊行程。

第一步:安裝 Custom Post Type UI

第二步:新增/編輯 Post Types (Add/Edit Post Type)

新增 Post Type 旅遊行程

第三步:新增/編輯 Taxonomies (Add/Edit Taxonomies)

新增國家分類法,記得要勾選用來分類「旅遊行程 (itineraries)」,如果你希望這個分類法有階層關係,可以在下方的設定中做選擇,不然預設都是沒有階層關係的。

新增國家分類法

第四步:完成新增

以上步驟完成後,你會看到左側選單上多了「旅遊行程 (itineraries)」以及在他的子選單底下多了「國家 (countries)」

你可能有興趣的 WordPress 基礎教學系列: