【WordPress】投稿一覧に特定のカテゴリを表示させない方法|Advanced Category Excluderの使い方

WordPressサイトを運営していると、投稿一覧に表示させたくないカテゴリの記事が出てきます。たとえば、テスト投稿、バックエンド処理用の記事、キャンペーン終了のお知らせなど、訪問者に見せる必要のない投稿もあるでしょう。

そんなときに便利なのが、**Advanced Category Excluder(ACE)**という無料プラグインです。この記事では、このプラグインの特徴と使い方をわかりやすく解説します。

Advanced Category Excluderとは

Advanced Category Excluder(略称:ACE)は、WordPressの投稿やRSS、検索結果、アーカイブなどから特定のカテゴリを除外できる便利なプラグインです。

管理画面からチェックボックスで設定できるため、コーディングの知識がなくても安心して使えます。

どんなときに使うの?

以下のようなケースで活用されています。

  • 特定のカテゴリの記事を投稿一覧ページから非表示にしたい
  • 検索結果に一部の記事を含めたくない
  • RSSフィードに社内向けカテゴリを載せたくない
  • サイト内のコンテンツをより洗練させたい

プラグインのインストール手順

  1. WordPressの管理画面にログイン
  2. 「プラグイン」→「新規追加」をクリック
  3. 検索欄に「Advanced Category Excluder」と入力
  4. 「今すぐインストール」→「有効化」

インストール後、管理メニューの「設定」に「Category Excluder」が追加されます。

設定方法

  1. [設定] → [Category Excluder] を開きます
  2. 各項目にカテゴリの一覧が表示されます
  3. 除外したいカテゴリにチェックを入れます

設定できる主な除外対象は以下の通りです。

  • Front Page(フロントページ)
  • Archives(アーカイブページ)
  • Search Results(検索結果)
  • RSS Feeds(RSSフィード)
  • Feeds for comments(コメント用フィード)

必要に応じて項目を選び、「変更を保存」するだけで反映されます。

注意点と補足

  • このプラグインは投稿単位の除外ではなく、カテゴリ単位の除外になります。
  • 外観やテーマによっては除外が反映されないこともあるので、キャッシュのクリアやテーマの仕様を確認しましょう。
  • プラグインの更新が長期間されていない場合は、類似のプラグインやfunctions.phpでのコード対応も検討しましょう。

functions.phpでの代替方法(参考)

開発に慣れている方は、以下のコードをテーマのfunctions.phpに追加することで、同様の効果を得られます。

function exclude_category_from_blog($query) {
if ($query->is_home() && $query->is_main_query()) {
$query->set('cat', '-5'); // 除外したいカテゴリIDをマイナス値で指定
}
}
add_action('pre_get_posts', 'exclude_category_from_blog');

複数カテゴリを除外したい場合は -5,-8,-10 のようにカンマ区切りで指定できます。


まとめ

Advanced Category Excluderは、WordPressの投稿管理をより柔軟にしてくれる便利なプラグインです。表示すべきでない投稿をスマートに制御することで、訪問者にとって見やすく価値のあるコンテンツだけを届けられるようになります。

設定も簡単で初心者にもやさしいため、まずは一度試してみる価値があります。