WordPressで現在の分類用語IDを取得するにはどうすればよいですか?


120

WordPressテーマフォルダーにtaxonomy.phpページを作成しました。関数の現在の用語IDを取得したいと思います。どうすれば入手できますか?

get_query_var('taxonomy') スラッグのみを返します。IDが必要です。

回答:


304

気にしないで!見つけた :)

get_queried_object()->term_id;

4
すごい!これにより多くの時間を節約できました:D
MavBzh 2013

どうもありがとうございました!
Anahit Ghazaryan 2015年

26
get_queried_object_id()IDだけを取得するために使用することもできます。スニペット全体は次のようになります$term_id = get_queried_object_id();
デビッド

いい答えだ 。最近、WordPressスタック交換で質問が表示されます。確認してください。wordpress.stackexchange.com/questions/214453/…–

どうもありがとうございました
FaISalBLiNK 2017年

42

シンプルで簡単!

get_queried_object_id()

3
get_queried_object_id()は3.1.0(2011年2月23日で導入され、尋ねられた質問に対する正しい答えになるはずです。> taxonomy.phpWordPressテンプレートフォルダーのページで、term id関数の現在の情報を取得したいと思います。
Pea

1
はい、この回答は完璧
でした

39

必要なコードスニペット全体は次のとおりです。

$queried_object = get_queried_object();
$term_id = $queried_object->term_id;

14

コードの下に貼り付けてください!

これにより、現在の分類法の名前と説明が印刷されます(オプション)

<?php 
   $tax = $wp_query->get_queried_object();
   echo ''. $tax->name . '';
   echo "<br>";
   echo ''. $tax->description .''; 
?>

11

分類ページにいる場合。

これが、分類法に関するすべての詳細を取得する方法です。

get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );

これは、分類IDを取得する方法です

$termId = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) )->term_id;

ただし、投稿ページの場合(分類->子)

$terms = wp_get_object_terms( get_queried_object_id(), 'taxonomy-name');
$term_id = $terms[0]->term_id;



1

それはあなたが望む用語スラッグです。それがあなたが必要なものであるなら、あなたはこのようなIDを得ることができるように見えます:

function get_term_link( $term, $taxonomy = '' ) {
    global $wp_rewrite;

    if ( !is_object($term) ) {
        if ( is_int( $term ) ) {
            $term = get_term( $term, $taxonomy );
        } else {
            $term = get_term_by( 'slug', $term, $taxonomy );
        }
    }
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.