新潟県妙高市|ホームページと広告の相談相手

妙高Web屋

お仕事のご依頼お見積りのご依頼

WordPress

【WordPress】複数のカテゴリーから親カテゴリーのみ取得する方法

2019.3.7

【WordPress】複数のカテゴリーから親カテゴリーのみ取得する方法
WordPress 0 0

こちらの記事は、このような方におすすめです。

・WordPressの投稿のカテゴリに「野菜」「にんじん」「ピーマン」のように複数を選択していて、ページ上に親カテゴリーの「野菜」のみを表示させたいという方

WordPressの投稿の種類を整理するために役立つ「カテゴリー」は、1つの投稿に対して複数指定することもできれば、カテゴリーを親子関係にすることもできます。

例えば「野菜」というカテゴリーがあったとして、それらに該当する投稿をさらに細かい分類で「にんじん」「ピーマン」などのサブカテゴリーに含めてしまうことも可能です。

この場合の「野菜」を親カテゴリーと呼び、「にんじん」や「ピーマン」を子カテゴリーとも呼びます。

今回の記事は、

「親カテゴリーや子カテゴリーを複数選択している投稿の情報を表示するページで、親カテゴリーのみを表示する方法」

のご紹介です。

この記事の目次

【結論】複数選択されたカテゴリーの中から親カテゴリーのみを表示する方法

まずは結論から。

親カテゴリーに該当するもの、冒頭でいう「野菜」のみを表示するコードはこちらです。

$categories = get_the_category();
foreach($categories as $cat) {
if($cat->category_parent == 0) {
$parent_category = $cat;
break;
}
}
echo $parent_category->term_id;

上記のコードを、PHPファイルの該当箇所に入れてみてください。

ページの先頭へ戻る

【詳細】[get_the_category()]の戻り値[category_parent]について

先ほどのセクションでご紹介したPHPのコードは、大まかにいうならば、

[1]特定の投稿のカテゴリー情報一式を取得する
[2]1個1個のカテゴリーを判別して、親カテゴリーに該当するものがあれば専用の変数にセットしたうえでカテゴリー判別を終了
[3]専用の変数の「カテゴリーID」に該当する値を表示する

となります。

ポイントとなるものは、内部のif文かと思います。

if($cat->category_parent == 0) {
$parent_category = $cat;
break;
}

[$cat]はカテゴリーに関する情報が一式詰まっているイメージなのですが、その中の情報のひとつ[category_parent]は、親カテゴリーを持たない場合(最上位の階層にある場合)は[0]という値を返すのです。

つまり、[category_parent]の値が[0]であるものが見つかり次第、それを親カテゴリーと判別している処理なのです。

[get_the_category()]に関しては、下記のリンクから詳細にご覧いただけます。

ページの先頭へ戻る

参考サイト

今回の記事を作成するにあたり、こちらのページを参考にさせていただきました。

ありがとうございました。

ページの先頭へ戻る

こちらの記事に感想をお寄せください

こちらの記事をご覧いただき、感じたことなどありましたら下記のボタンを押していただき「感想投稿フォーム」よりお気軽にご感想をお寄せください。

この記事の感想を投稿する
0 0

LINE@始めました!

妙高Web屋ではこのたび、LINE@(ラインアット)を始めることとなりました。

企業やお店のWeb担当者さまへ向けて、ホームページの運営・管理・更新に関する情報を発信していきます。

情報を購読できる「友だち」へのご登録は、下記のボタンよりお願いいたします。

目的のページは見つかりましたか?

お探しのページが見当たらない場合は、キーワードを手がかりに、サイト内検索をご利用ください。

または、下記のボタンより「サイトマップ」のページにアクセスしていただき、お探しください。

目的のページは見つかりましたか?
Twitterでシェアする Twitterでシェアする Facebookでシェアする Facebookでシェアする Feedlyで購読する Feedlyで購読する お問い合わせお問い合わせ ページの先頭へページの先頭へ