WordPressのブログを運用し続けると、いらないカテゴリーが増えてきます。わざわざカテゴリーを削除しなくても、表側で見えなくすることで、カテゴリーの編集を避けることができます。
今回は、WordPressの特定のカテゴリーを非表示にする方法をまとめます。
手順の確認
カテゴリーを整理する手順を下記にまとめました。まずは、全体のイメージをつかみましょう。
全体の目的をまずは整理します。やりだすときりがないくらいこだわってしまうのですが、必要最低限で対応をするのがいいです。
非表示にするカテゴリーをまとめます。
対象のカテゴリーを非表示にするために、function.phpにコピペします。
目的の整理
カテゴリーだけを整理していくというこはあまり目的になりません。特定のカテゴリーを詳しく読んでほしいと感じたときに全体のカテゴリーを整理していきます。
結果として、どのカテゴリーを見てほしいか、どのカテゴリーがいらないかをよく考えることから始めましょう。
また、カテゴリーの整理は、なかなか進まないことが多いので、焦らずに行います。というのも、これって家の片付けにとても似ているんですよね。「いざ、まいらん!」と言っても、なかなか進みません。
そもそも必要なのか、どこまでやったら終わりにするかを決めておくと、スッキリ進みます。
非表示カテゴリーをまとめておく
次に、非表示にしたいカテゴリーをまとめておきましょう。例えば「非表示」とという親カテゴリーの下に、いらないカテゴリーをまとめす。
「非表示」というカテゴリーを非表示設定するだけで、その下のカテゴリーがすべて非表示になります。
そして、そのターゲットのカテゴリーのIDを知っておきましょう。
WordPressにログインして、「カテゴリー」にアクセスをします。
出てきた一覧から、対象のIDをチェックしましょう。例えば、29というのがありますね。これを次に使いますので、メモしておいてください。
消す
Collapsing Categoriesを入れる
こちらのプラグインを入れると非表示にするカテゴリーをウィジェットで選ぶ際に選択できます。この場合は、slugを除外対象で選びます。アルファベットでつけた名前ですね。
function.phpにカスタム関数を入れ込む
function.phpに入れ込みます。なお、WordPressの子テーマをいじるようにしましょう。テーマによりますが、子テーマの方が間違ったときに復旧がしやすいです。
function.phpに次のコードを入れ込みます。
function hide_specific_category($query) {
if ($query->is_home() && $query->is_main_query()) {
// ここに非表示にしたいカテゴリーのIDを設定します。
$exclude_category = '-29'; // 例: カテゴリーIDが29の場合
$query->set('cat', $exclude_category);
}
}
add_action('pre_get_posts', 'hide_specific_category');
もし複数のカテゴリーを除外したい場合は、以下のように、カンマで区切って入れておきましょう。
function hide_specific_category($query) {
if ($query->is_home() && $query->is_main_query()) {
// ここに非表示にしたいカテゴリーのIDを設定します。
$exclude_category = '-3,-5'; // 例: カテゴリーIDが3と5の場合
$query->set('cat', $exclude_category);
}
}
add_action('pre_get_posts', 'hide_specific_category');
WordPressのバージョンによって、この方法では非表示ならない場合がありますのでご注意ください。
たまにスッキリさせよう
カテゴリーは、たまにスッキリさせておくと書き手の方向性がはっきりできます。上手に整理につなげましょう。
【編集後記】
ブログの方針を修正しています。少しずつ新しくしていきます。
【運動記録】
ストレッチ○
【子育て日記(5歳・2歳)】
一緒に時計の電池を変えました。おもちゃに入っているのを変えるので、電池の扱いはお手の物です。