WordPress 首頁文章列表排除特定分類文章

如果你想要在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');