WordPress 站內搜尋外掛升級指南:SearchWP 與 FacetWP 完整設定

WordPress 內建的搜尋只做一件事——比對文章標題與內文的關鍵字,找到就列出,不管順序、不管相關性,也不管結構化資料有沒有放進自訂欄位。小型部落格用起來尚可,但網站一旦累積到幾百篇內容,或大量使用進階自訂欄位(ACF)儲存結構化資料,原生搜尋幾乎等於失效:使用者輸入關鍵字,結果要嘛一片空白,要嘛列出一堆不相關的舊文。

這個問題有兩個解法方向。一是換一套能自訂加權與索引範圍的搜尋引擎,二是在搜尋結果頁加上即時篩選介面。前者以 SearchWP 為代表,後者以 FacetWP 為主要選項,兩套工具在技術社群的討論度已維持多年,2026 年仍是同類方案中整合度最高的選擇。

SearchWP 能做到哪些原生搜尋做不到的事

WordPress 預設搜尋的索引範圍固定,只讀 post_titlepost_contentpost_excerpt 三個欄位,其他全部略過。SearchWP 的核心設計是讓站長自訂搜尋引擎(Search Engine)的索引組成,從後台介面拖拉即可決定哪些欄位要被搜尋、各欄位的重要性權重各是多少。

自訂索引欄位與加權

進入 SearchWP 設定後,每個搜尋引擎實例都有一張來源清單,列出所有文章類型與可索引的欄位。站長可以把 ACF 自訂欄位、商品規格(WooCommerce meta)、作者姓名、分類名稱、標籤,乃至附件的 EXIF 資料全部納入索引。

欄位重要性以滑桿設定,滿分 10 分。標題通常設到 8–10 分,內文 4–6 分,自訂欄位依重要性設 2–5 分不等。這個機制讓搜尋結果排序更符合讀者預期——搜「台南咖啡」時,店名欄位命中的文章會排在只是在內文裡帶到這個詞的文章前面。

部分比對與片語搜尋

原生搜尋是全字比對,搜「咖啡豆」找不到只寫「豆」的文章。SearchWP 預設啟用部分比對(Partial Matching),讓關鍵字片段也能觸發索引;同時保留精確片語搜尋語法,搜尋時加引號即可鎖定完整詞組。

多個搜尋引擎實例

這個功能對多類型網站尤其實用。一個搜尋引擎實例對應網站的一般文章,另一個只索引 WooCommerce 商品,搭配短代碼(shortcode)就能讓商品搜尋欄與文章搜尋欄各自走不同的索引規則,互不干擾。

ACF 欄位進索引的完整設定流程

許多站長把景點開放時間、服務項目、地址、聯絡資訊這類資料存成 ACF 欄位,但原生搜尋完全讀不到這些內容。以下是讓 SearchWP 讀取 ACF 欄位的步驟。

確認 ACF 欄位已有資料

索引空欄位沒有意義。先到文章編輯頁確認目標 ACF 欄位確實填有內容,再回 SearchWP 設定頁面操作,否則索引後測試時容易誤判是設定出錯。

在搜尋引擎來源加入自訂欄位

進入 SearchWP 後台,選擇要修改的搜尋引擎,在「文章」(Posts)那列點「新增來源」,下拉選單會列出所有可用的自訂欄位名稱。找到對應的 ACF 欄位鍵值(key),拖到來源列表,設定好重要性權重後儲存。

重複型欄位(Repeater)與群組欄位(Group)需確認 ACF Pro 版本是否已啟用 SearchWP 的整合選項,舊版 ACF 可能需要另裝 SearchWP 的 ACF 擴充套件。

重建索引

加入新欄位後必須手動觸發重建(Re-index),SearchWP 設定頁右上角有一顆「重建索引」按鈕。網站文章量若超過 1,000 篇,重建過程可能需要數分鐘,瀏覽器保持開啟直到進度條完成即可。重建完成後輸入幾組測試詞,確認 ACF 欄位內容確實出現在搜尋結果中。

FacetWP 的即時篩選介面怎麼搭

搜尋引擎決定了「哪些東西能被找到」,但搜尋結果頁的體驗取決於「使用者能不能縮小範圍」。FacetWP 在搜尋結果或任何文章列表頁加上篩選介面,讓讀者依分類、標籤、日期、自訂欄位值即時過濾,不必每次重新輸入關鍵字。

篩選器類型選擇

FacetWP 提供十多種篩選器(Facet)類型,常用的有以下幾種。

  • 核取方塊(Checkboxes):最適合分類、標籤、多選屬性。讀者可同時勾選多個選項,結果即時更新,不必按送出。
  • 下拉選單(Dropdown):適合選項多、互斥的欄位,例如地區、縣市、語言。比核取方塊省空間,但僅能單選。
  • 滑桿範圍(Slider):適合數值欄位,像是價格、年份、坪數。設定時需指定來源欄位,FacetWP 會自動讀取最小與最大值。
  • 搜尋框(Search):FacetWP 內建的搜尋篩選器,可結合 SearchWP 使用,讓搜尋行為統一走 SearchWP 的索引邏輯。

把篩選器放到頁面上

FacetWP 用短代碼或區塊編輯器元素放置篩選器,核心短代碼是 [facetwp facet="篩選器名稱"],結果列表則用 [facetwp template="模板名稱"]。頁面建置完成後,切換到前台確認篩選器能正常顯示,點選任一選項後結果區塊有即時刷新即為成功。

若站台使用頁面建構器(Page Builder),FacetWP Pro 提供 Elementor 與 Bricks 的原生元素,可直接拖拉放置,不需手動貼短代碼。

SearchWP 與 FacetWP 搭配的邊界

兩套工具可以獨立運作,也可以整合。SearchWP 負責索引與相關性排序,FacetWP 負責篩選介面,兩者搭配時需要在 FacetWP 設定中勾選「使用 SearchWP 處理搜尋請求」,否則搜尋框篩選器預設仍走原生搜尋邏輯。

整合後的資料流如下:使用者在搜尋框輸入關鍵字,請求由 SearchWP 的索引引擎處理並回傳排序後的文章 ID,FacetWP 再依目前勾選的篩選條件過濾這份 ID 清單,最後渲染結果列表。兩個工具各司其職,不會互相覆蓋。

需要注意的邊界是快取外掛。WP Rocket 與 LiteSpeed Cache 的頁面快取會讓 FacetWP 的即時篩選失效——篩選器發出的 AJAX 請求若被快取攔截,頁面永遠顯示第一次載入的結果。正確做法是在快取外掛的設定中把 FacetWP 的 AJAX 端點路徑加入排除清單,或直接依 FacetWP 官方文件提供的快取整合指引逐套設定。

兩套外掛的費用與適用場景對照

SearchWP 與 FacetWP 都是付費外掛,無免費版,購買前先評估網站規模與功能需求是否與授權費用相符。

比較項目 SearchWP FacetWP
定價起點 約 99 USD/年(單站) 約 99 USD/年(單站)
核心功能 自訂索引、欄位加權、多引擎實例 即時篩選介面、模板結果列表
ACF 支援 支援,舊版需擴充套件 支援,可對 ACF 欄位建立篩選器
WooCommerce 整合 官方擴充(付費附加) 支援商品屬性、庫存狀態篩選
適合對象 內容量大、自訂欄位多的知識型站台 電商、目錄型、多維度篩選需求的站台
可單獨使用 可,不需搭配 FacetWP 可,搜尋走原生或 SearchWP 都行

兩套工具的年費合計約 200 USD,對每月有一定流量的商業站台而言屬於合算的投入,因為搜尋體驗直接影響使用者找到目標內容的效率。純部落格或流量極低的站台,可先用 Relevanssi 免費版試水,確認改善方向對站台有實質效益後,再評估是否升級付費工具。

相關文章
標籤: 即時篩選, SearchWP, FacetWP, ACF 欄位索引, 站內搜尋