[php] アクティブなページの現在のカテゴリIDを取得する


3 Answers

カテゴリページの場合は、現在のカテゴリのIDを取得できます。

$category = get_category( get_query_var( 'cat' ) );
$cat_id = $category->cat_ID;

どのページでも特定のカテゴリのカテゴリIDを取得したい場合は、次の方法を試してみてください:

$category_id = get_cat_ID('Category Name');
Question

その特定のカテゴリを使用しているすべての投稿をリストしているWordPressの特定のページのカテゴリIDを取得しようとしています。 以下を試しましたが、動作しません。 私はsingle_term_titleを使用してカテゴリ名を取得することができます。

$category = single_term_title("", false);
$catid = get_cat_ID( $category );

$categoryは "Entertainment"と表示しています。 しかし、私はまた、 "エンターテインメント"のIDが必要です。 私はこれについてどうやって行くのですか?




私はカテゴリテンプレートページのパンくずリストにこれを使用しました:

$cat_obj = $wp_query->get_queried_object();
$thiscat_id = $cat_obj->term_id;
$thiscat = get_category($thiscat_id);
$parentcat = get_category($thiscat->parent);



私はget_queried_object関数を使用して、category.phpテンプレートページ上の現在のカテゴリを取得します。

$current_category = get_queried_object();

ヨルダンのエルドリッジはそうです、get_the_categoryはここには適していません。




私はあなたが尋ねたものを正確に探している間、この質問を見つけました。 残念ながら、あなたは間違った答えを受け入れました。 私たちが達成しようとしているものを達成しようとしている他の人々のために、私は正解を投稿すると思った。

$cur_cat = get_cat_ID( single_cat_title("",false) );

あなたが言ったように、 single_term_title("", false); カテゴリのタイトルが正しく返されていたため、なぜコードに問題があったのかわかりません。 上記のコードは完璧に動作します。




Related