如果你想要在WordPress首頁排除特定分類文章顯示的話,可以透過pre_get_posts來加入過濾機制,讓你的首頁可以指定排除特定分類的文章,他就不會出現在首頁。不過分類頁面、文章彙整頁面、作者頁面、RSS頁面都還是會顯示的。
使用 pre_get_posts 排除首頁特定分類文章
開啟佈景主題:functions.php
加入
function exclude_category($query) { if ( $query->is_home ) { $query->set('cat', '-17'); } return $query; } add_filter('pre_get_posts', 'exclude_category');
其中的 17 請換成你要排出的分類代號(記得在數字前加上「 – 」負號),如果很多的話可以用逗號分隔。
如果排除編號為 15 和 20 的分類,就輸入以下語法:
function exclude_category($query) { if ( $query->is_home ) { $query->set('cat', '-15 -20'); } return $query; } add_filter('pre_get_posts', 'exclude_category');