如何設定 WordPress 每頁文章數量?

Willy Hsu
  • #WordPress

如何設定 WordPress 彙整頁面的文章數量 (每頁顯示幾篇文章)?

這是一個非常好的問題,答案是肯定的,你絕對可以設定彙整範本 (Archive Template) 中每頁顯示的文章數量。

這是 WordPress 一個很基礎的功能,主要有兩種方式可以控制:

全域設定 (Global Setting): 這是最簡單也最常見的方法,它會為網站上所有的彙整頁面(例如部落格主頁、分類頁面、標籤頁面等)設定一個統一的數值。
區塊設定 (Block Setting): 這個方式可以讓你針對某一個特定的「查詢迴圈」區塊,去覆寫全域設定。
讓我們來看看這兩種方法。

方法一:全域 WordPress 設定 (彙整頁面建議使用)

這是管理彙整頁面分頁最標準、最可靠的方式。它能確保你所有的彙整範本都能正常運作,而不需要任何額外的程式碼。

在你的 WordPress 後台,前往 設定 → 閱讀 (Settings → Reading)。
找到「網誌頁面最多顯示 (Blog pages show at most)」這個選項。
輸入你希望每頁顯示的文章數量(例如:9, 10, 12)。
點擊「儲存變更 (Save Changes)」。
它是如何運作的:當你在網站編輯器中編輯你的「彙整 (Archive)」範本時,裡面的「查詢迴圈 (Query Loop)」區塊預設會開啟「繼承查詢自範本 (Inherit query from template)」的選項。這意味著它會自動使用你在「設定 → 閱讀」中所配置的全域設定值,此時分頁功能將會完美地正常運作。

方法二:區塊編輯器設定 (請謹慎使用)

你也可以直接在「查詢迴圈」區塊內部設定文章數量。這個功能在靜態頁面上建立自訂文章列表時非常有用,但在彙整範本中使用時則需要特別小心。

在網站編輯器中,打開你的「彙整」範本。 選取「查詢迴圈」區塊。 在右邊的區塊設定側邊欄中,你會看到一個區塊控制項的區段,你可以在這裡設定「每頁項目數 (Items per page)」的值。 非常重要的警告 這讓我們回到了先前所有問題的根本原因。 當你在區塊的「每頁項目數」設定中輸入一個數字時,你實際上等同於停用了「繼承查詢」的功能(也就是我們之前討論的 inherit: false)。 正如我們先前所發現的,在彙整頁面上這樣做,會切斷頁面主要查詢與區塊自訂查詢之間的連結,這將會導致我們花了很長時間用 PHP 來修復的那個分頁問題。

簡單總結:

對於彙整範本 (Archive Templates),例如分類、標籤、部落格主頁,請一律使用方法一 (全域閱讀設定)。對於在一個常規的「頁面 (Page)」上建立自訂文章列表,你可以使用方法二 (區塊設定)。