打開後台外觀選單想找「小工具」,設定側邊欄要放的搜尋框或最新文章清單,畫面卻跟教學文章的截圖完全對不上。選單裡根本沒有「小工具」這一項,或者介面長得完全不一樣。這不是網站設定壞掉,而是小工具(Widget)這套機制近幾年在 WordPress 裡經歷了好幾次改版,新舊佈景主題呈現的方式也因此不一樣。
小工具是 WordPress 用來替側邊欄、頁尾這類固定重複出現的版位加內容的積木,不用動任何程式碼,拖一個搜尋框、貼一段自訂 HTML,就能讓它出現在全站每一頁。搞懂它現在長什麼樣子、藏在哪裡管理,才不會對著教學畫面乾瞪眼,也才知道換主題後那些排好的內容跑去哪裡了。
這套機制從外觀底下的獨立頁面,到後來改成跟文章編輯器一樣的區塊操作,再到部分佈景主題乾脆把它整個拿掉,版本不同、主題類型不同,能看到的東西也不同。

小工具是什麼?
小工具的英文原文是 widget,WordPress.org 的說明文件把它定義成會把內容和功能加進「小工具區域」的機制,而小工具區域是佈景主題事先定義好的區塊,通常在側邊欄或頁尾,不過實際位置依主題而不同。換句話說,它要解決的需求很具體,也就是某些內容想要每一頁都看得到,例如搜尋框、最新文章清單、社群連結,但不必為了它們去改任何一個版型檔案。
這跟寫文章、編輯頁面時插入的區塊不是同一回事。文章正文裡的段落、圖片、按鈕只出現在那一篇文章裡,小工具放進去的內容則是固定綁在網站的某個版位上,不管訪客點進哪一篇文章、哪個頁面,都會在同樣的位置看到同樣的東西。這也是為什麼側邊欄的搜尋框或頁尾的聯絡資訊不用每篇文章都重複貼一次,設定一次就能全站套用。
這套機制其實出現得很早。WordPress 在 2007 年 5 月發布 2.2 版的公告裡就提到,小工具能讓使用者用拖放的方式,輕鬆重新排列與自訂網誌側邊欄一類的版位,而且從這個版本開始,小工具已經內建進核心程式碼裡,不必再另外安裝外掛才能使用。
佈景主題決定的小工具位置與命名
小工具區域不是 WordPress 寫死在核心裡的一份固定清單,而是每一套佈景主題自己用程式登記出來的。WordPress.org 的說明文件說得清楚,小工具區域「通常」在側邊欄或頁尾,但實際上會因主題而異,有些主題只登記一個小工具區域,有些登記五、六個,名稱也可能取成「主要側欄」「頁尾欄一」「頁尾欄二」這種各家不同的說法。

這就是為什麼同一篇教學文章,後台畫面卻可能對不上號。同一套 WordPress 核心,換了一款佈景主題,小工具區域的名稱與數量就可能整個換掉,教學裡寫的「側邊欄小工具」,換到某些主題可能叫「Blog 側欄」,甚至根本沒有這個版位。說明文件也舉過例子,像 Twenty Seventeen 這套主題,除了常見的側邊欄與頁尾位置之外,還在每一頁的頁尾額外安排了一個小工具區域,不是每套主題都照著同一套慣例走。
另外一個常被誤會的情況是,有些佈景主題本身內建自己的頁尾或頁面編排器,不吃 WordPress 原生的小工具系統。這時候就算跑到外觀的小工具頁面調整了頁尾內容,前台畫面也不會有反應,不是設定沒存到,而是那套主題的頁尾根本是用它自己的編排器在管理,要到主題本身的設定選項裡去調整才對。
區塊編輯器把小工具改成用區塊組裝
WordPress 5.8 在 2021 年替小工具帶來一次介面上的大改版,WordPress 稱它為「區塊小工具編輯器」(Block-based Widgets Editor)。改版之後,外觀裡的小工具頁面不再是舊式的拖曳欄位,換成跟文章編輯器幾乎一樣的操作邏輯,每一個小工具區域,例如「頁尾」「側邊欄」,在畫面上各自變成一塊獨立可編輯的區域,要加內容就點加號插入區塊,跟平常編輯文章插入段落、圖片是同一套動作。

要把一個區塊從這個小工具區域搬到另一個區域,也有兩種做法,直接用滑鼠拖放,或是點區塊工具列裡的選項,選擇要移到哪一個小工具區域。對已經熟悉區塊編輯器的人來說,這次改版把管理小工具的學習成本降到接近零,不用再學一套全新的操作邏輯。
舊小工具不會消失,包進舊版小工具相容區塊
改版最讓人擔心的通常是,原本排好的小工具會不會因為介面換了就整個不見。答案是不會。改版前就已經加進小工具區域的項目,不管是核心內建的搜尋、分類,還是外掛額外註冊的自訂小工具,都會被包進一個叫做「舊版小工具」(Legacy Widget)的相容區塊裡繼續運作,原本填好的每一項設定值也不會被清空。
底層的資料結構其實從頭到尾都沒有變,區塊小工具編輯器本質上是用一個對使用者隱形的「區塊」小工具在儲存資料,這代表外掛與佈景主題可以照常運作,就算之後把區塊小工具編輯器整個停用,內容也不會遺失。就算某個第三方外掛提供的自訂小工具沒有專屬的區塊版本,一樣可以透過新增一個舊版小工具區塊、在裡面設定它來加入,不會因為外掛沒跟上區塊化就用不了。
安裝 Classic Widgets 外掛能切回舊版介面
不習慣新介面的人也有退路。WordPress 團隊自己維護一款叫做 Classic Widgets 的外掛,安裝並啟用之後,外觀的小工具頁面與自訂器裡的小工具功能,都會回到區塊化之前的原始畫面,操作邏輯整個還原成舊版。
除了裝外掛之外,佈景主題本身也能用程式碼的方式停用區塊小工具編輯器,呼叫 remove_theme_support('widgets-block-editor') 這個函式即可做到。這通常是主題開發者才會動用的機制,一般使用者不需要自己寫程式,知道有這個做法存在,遇到主題刻意維持舊版介面時就不必意外。
外觀小工具頁面和自訂器的分工
WordPress 提供兩個能編輯小工具的入口,做的事情看起來一樣,體驗卻不同。外觀裡獨立的「小工具」頁面是最直接的做法,調整完直接按儲存就生效,跟其他後台設定頁面沒兩樣。外觀底下的「自訂」裡也有一個小工具選項,差別在於它整個包在「外觀自訂器」(Customizer)裡,一邊改設定,右邊就能即時看到前台實際會呈現的畫面,還可以先把變更排程到指定時間才發佈,或者把還沒定案的變更分享給別人先看過。
自訂器比較適合想邊看邊調、或不想讓變更馬上生效的情況,代價是畫面比較窄。要找到某個區塊完整的進階設定,得先按加號插入區塊,加入之後點區塊工具列最右邊的三個點選單,選「顯示更多設定」才會展開,不像獨立的小工具頁面,大部分設定一開始就攤在畫面上,不用多點這一步。

側邊欄和頁尾常見的小工具內容
能不能編輯小工具是一回事,實際能放的內容又是另一回事。WordPress 核心內建、不必額外安裝任何外掛,就能直接放進小工具區域的項目其實不少,同一種小工具也能重複加入,同時出現在不同的小工具區域裡,像是搜尋框可以同時放在側邊欄與頁尾,不會衝突。
搜尋、分類和最新文章等導覽型內容
這一組小工具的共同點,是幫讀者在網站裡找到更多內容。搜尋是最直接的一種,讓訪客主動輸入關鍵字查詢;分類小工具則是把全站文章依主題分類攤開成一份清單,等於在側邊欄多開一層目錄,讓沒有明確搜尋目標的訪客也能順著分類逛下去。標籤雲把常用標籤依使用頻率排成一團,點進去能看到同標籤下的所有文章;彙整小工具依月份或年份把舊文章整理出來,方便回頭找特定時間的內容。
最新文章小工具的作用方向剛好相反,不是等讀者主動找,而是把剛發布的內容直接推到他眼前。這幾種小工具對內容型網站,像是部落格、新聞站,特別重要,因為它們直接影響一個訪客看完一篇文章後,會不會順手多點開下一篇。
自訂 HTML、圖片和導覽選單等延伸內容
這一組偏向版面延伸,能放進的東西比導覽型更彈性。自訂 HTML 小工具讓人直接貼一段程式碼進去,最常見的用法是貼社群平台粉絲專頁或第三方服務提供的嵌入碼,讓外部內容直接顯示在小工具區域裡;圖片小工具則是單純把一張圖片放進版位,不需要繞去寫程式碼。
導覽選單小工具能把後台建好的選單直接放進側邊欄,等於在網站上多開一套導覽路徑,常見於側邊選單型的版面配置。RSS 小工具的用法又不太一樣,它整合的是外部來源的訂閱來源,設定好之後會自動顯示該來源最新發布的內容,等於把別的網站更新的內容同步摘要進自己網站的小工具區域裡。
區塊佈景主題不提供小工具選單
以上內容的前提,是使用的佈景主題支援傳統的小工具區域。如果現在用的是區塊佈景主題(也叫全站編輯,Full Site Editing,簡稱 FSE 主題),外觀選單底下會直接找不到「小工具」這一項,判斷方法是看外觀選單裡有沒有換成「編輯器」,而不是「小工具」或「自訂」,換成「編輯器」就代表現在用的是區塊佈景主題。這不是設定跑掉,也不是版本壞掉,是 WordPress 刻意把這個選單拿掉的。

原因出在區塊佈景主題把整個網站的每個部位,包含頁首、頁尾、文章版型,全部改用區塊來描述。小工具原本的邏輯是固定位置、只能放特定清單裡的小工具,但區塊佈景主題裡,任何區塊都能放進網站的任何一個角落,不再需要另外準備一份能放進小工具區域的專屬清單。頁尾想放圖片、想放導覽選單,直接在那個位置插入對應的區塊即可,不受限於過去小工具能提供的種類。自訂器在區塊佈景主題裡預設也不會出現,原本靠自訂器做的即時預覽與微調,改用「樣式」功能和編輯器本身完成。
頁尾和側邊欄改在網站編輯器編輯範本組件
既然沒有小工具選單,頁尾、側邊欄這些會在多個頁面重複出現的內容,實際上要去哪裡改?答案是外觀底下的「編輯器」(Site Editor)。在區塊佈景主題裡,這類重複出現的區塊叫做「範本組件」(Template Part),進到編輯器的範本組件列表(放在「區塊版面配置」底下)就能找到並點選編輯。它的運作方式跟一般頁面模板不太一樣,改動範本組件裡的內容會同步套用到所有引用這個範本組件的頁面,不用一頁一頁分別修改。

不過不是每一款區塊佈景主題預設都內建了側邊欄用的範本組件,有些主題整個版型設計就沒有側邊欄,自然也不會準備這個組件。遇到這種情況,可以自己動手用「欄位」(Columns)區塊,在頁面模板裡組出一個側欄版面,排好想放的內容之後再把它存成一個範本組件,之後就能在其他頁面重複套用,不用每次都重新排一次。
換掉佈景主題,小工具設定不會憑空消失
換主題前,不少人擔心的是原本排了老半天的小工具內容,會不會因此整個消失不見。不管換到的是另一款傳統佈景主題,還是換成前面提到的區塊佈景主題,WordPress 都有機制把原本的設定留下來,差別只在於換了主題之後,要用什麼方法把它們找回來、接著用。

傳統佈景主題互換,小工具先進未啟用區待命
如果換到的新主題同樣是傳統佈景主題,但小工具區域的名稱或數量跟原本的主題不一樣,WordPress 不會直接刪掉舊主題留下的小工具。它會把這些找不到對應區域的小工具整批搬進外觀小工具頁面裡的「未啟用的小工具」(Inactive Widgets)區塊裡暫存,連裡面填好的設定值都會一起保留下來。
要復原也不用重新設定一次,只要把暫存在裡面的小工具拖回新主題對應的小工具區域,原本的內容與設定就會跟著一起回來。換主題之後常常會遇到小工具區域數量或配置不一樣的情況,只要想起來去「未啟用的小工具」那一區看看,通常就能找回原本以為不見了的內容。
換成區塊佈景主題,透過匯入功能接手小工具區域
從傳統佈景主題換成區塊佈景主題,情況又不太一樣,因為區塊佈景主題根本沒有小工具區域這個概念,自然也不會有未啟用的小工具這個暫存區可以接手。這時候走的是另一條路,在編輯器裡編輯一個還沒有內容的空白範本組件時,進階設定裡會出現一個叫做「Import Widget Area」(匯入小工具區域)的下拉選單;已經放了內容的範本組件不會顯示這個選項,所以通常是先新增一個空白範本組件再匯入。
選單裡列出的是舊主題原本登記過的小工具區域,選定其中一個之後,裡面原本放的內容就會直接匯入,變成這個範本組件裡的區塊內容,不用把每一個小工具重新手動組裝一次。對於原本在側邊欄或頁尾排了不少內容的網站來說,這個匯入功能能省下換版型時最耗時間的一段重建工作。
小工具在 WordPress 裡呈現的樣子,其實是由現在用的是哪一款佈景主題決定的。傳統佈景主題還維持著側邊欄、頁尾各自對應一份小工具清單的邏輯,區塊佈景主題則整個換了一套規則,任何區塊都能放進網站的任何角落。搞懂自己現在用的是哪一種,對照著找對應的編輯入口,原本畫面跟教學對不起來的困惑多半就能解開。不管之後是換主題還是升級 WordPress 版本,這套機制底層的設定值都有辦法保留下來,真正需要留意的只是找到它現在被放在哪個入口而已。
