WordPressは非常に柔軟なCMSであり、その機能の1つとして特定のタクソノミーの項目数を取得する機能があります。今回は、特にカテゴリーの数を簡単に取得する方法を紹介します。
wp_count_terms()関数とは
wp_count_terms()はWordPressに組み込まれている関数で、指定したタクソノミーの項目数を返します。この関数を使用すると、カテゴリーの数だけでなく、タグやカスタムタクソノミーの項目数も取得することができます。
カテゴリーの数を取得するコード
以下のコードを使って、簡単にカテゴリーの総数を取得することができます。
// カテゴリーの数を取得する $category_count = wp_count_terms( 'category' ); echo 'カテゴリーの数: ' . $category_count;
このコードをアクティブなWordPressテーマの適切な場所に配置することで、サイト上でカテゴリーの総数を表示することができます。
他のタクソノミーの項目数を取得する
wp_count_terms()関数は非常に多機能です。例えば、タグの数を取得したい場合は、以下のようにタクソノミーのスラッグを変更します。
$tag_count = wp_count_terms( 'post_tag' ); echo 'タグの数: ' . $tag_count;
よくある質問(FAQ)
Q. WordPressで子カテゴリの親カテゴリを取得するにはどうすればよいですか?
A. カテゴリオブジェクトの
$cat->parentで親カテゴリIDを取得できます。親カテゴリの情報はget_category($cat->parent)で取得します。現在の記事のカテゴリから辿る場合:$cats = get_the_category(); $parent_id = $cats[0]->parent; $parent = get_category($parent_id);Q. カテゴリの階層(全祖先)を取得するにはどうすればよいですか?
A.
get_ancestors($cat_id, "category")で親カテゴリIDの配列(最上位が末尾)を取得できます。パンくずリスト表示に便利です。get_term($id, “category”)で各カテゴリの情報を取得します。Q. WordPressのget_categoriesで親カテゴリのみを取得するにはどうすればよいですか?
A.
get_categories(["parent" => 0])でparent=0(ルートカテゴリ)のみを取得できます。子カテゴリのみ取得するには["parent" => $parent_id]で特定の親の子カテゴリを取得します。まとめ
WordPressは非常に使いやすいツールが多数備わっており、それによりサイトのカスタマイズや情報の取得が容易になっています。wp_count_terms()関数を利用することで、サイト上のカテゴリーやタグなどのタクソノミーの項目数を簡単に取得することができます。