トップページや、投稿のアーカイブ(一覧リスト)ページに特定のカテゴリーの記事を表示しない方法をご紹介します。
プラグインUltimate Category Excluderでトップページやアーカイブページ、RSSなどから特定カテゴリーの投稿記事を表示させないようにする
プラグインUltimate Category Excluderを利用されるととても簡単にカテゴリーを除外してリストを表示できるようになります。
プラグインをインストールされたら、
ワードプレスの管理画面>設定>Category Excluderをクリックして設定画面を表示しましょう。
左の列にカテゴリーが表示されています。
それぞれの行のチェックをつけると、そのページから特定のカテゴリーを除外して表示するようになります。
Exclude from Front Page? → トップページに特定カテゴリーを表示しないようにします
Exclude from Feeds? → 配信するRSSフィードに特定カテゴリーを表示しないようにします
Exclude from All Archives? → アーカイブに特定カテゴリーを表示しないようにします
Exclude from Search? → 検索結果に特定カテゴリーを表示しないようにします
コードを記載して特定カテゴリーを表示内容にする方法
プラグインを利用せずに直接コードを記載して特定カテゴリーを除外するには下記のようにテーマに含まれるfunctions.phpに記載します。
function exclude_category_original( $query ) { if ( $query->is_home ) { $query->set( 'cat', '-5, -9, -23' ); } return $query; } add_filter( 'pre_get_posts', 'exclude_category_original' );
このコードの場合、$query->is_home という部分でもしトップページならば、カテゴリーID5,9,23の記事を表示しないという意味になります。(カテゴリーIDはカテゴリー一覧から任意のカテゴリーを編集し、URLのtag_ID=XXとなる部分のXXがカテゴリーIDとなります。)
また上記の$query->is_homeの部分を、query->is_search に変えれば検索結果から特定のカテゴリーを除外することができます。$query->is_feedに変更するとRSSから特定カテゴリーを除外することができるようになります。
お試しください。