—— 問題不在頁碼元件,在商品查詢根本沒照你設定的筆數跑
內容導覽
▋ 這不是 Elementor 壞掉
商品分類頁的 Loop Grid 有頁碼,但切頁沒反應,或每一頁看起來都像同一頁。這種情況大多不是頁碼元件失效,是查詢層根本沒把每頁數量鎖住。
結論很簡單:先修 WooCommerce 查詢。不要繼續在 Elementor 面板裡亂調每頁數量。
▋ 直接放這段 PHP
把下面這段放進 functions.php、Code Snippets,或你的客製外掛。先只留這一套。不要同時保留別段也在改 posts_per_page。
add_action('woocommerce_product_query', function($query) {
$query->set('posts_per_page', 9);
}, 99);
add_filter('loop_shop_per_page', function() {
return 9;
}, 99);▍ 正確做法:只留一套數值,而且全部一致
- 要 9 筆就全部寫 9。
- 要 12 筆就全部改 12。
- 不要一段寫 9、一段寫 12,那只會讓頁碼繼續亂。
▋ 為什麼頁碼會失效?
因為頁碼是跟著查詢結果走的。查詢沒鎖住每頁筆數,總頁數就算不準,頁碼自然看起來像沒作用。
你現在修的不是版面,是查詢邏輯。這也是為什麼只調 Elementor 小工具沒用。因為它根本不是最上游。
▋ 測試時順手檢查什麼?
- —— 清快取,再切一次頁碼。
- —— 看看佈景或 Snippets 裡有沒有別段也在改商品數量。
- —— 確認你測的是 WooCommerce 分類頁,不是別的自訂查詢頁。
▍ 判斷準則:切頁後每頁商品數固定、頁碼能正常跳、URL 也跟著變,這才叫修好。只修到前端看起來像正常,不算。
小提醒:先把會互相打架的查詢規則清乾淨,再測 Elementor。不要一邊留舊規則,一邊懷疑新程式沒生效。
需要 WordPress 客製化協助?歡迎聯絡我們


