サポート » 使い方全般 » Custom Post Type UIで作成したPost TypesのTaxonomiesのカテゴリのスラッグの取得方

  • 解決済 akihiro0128

    (@akihiro0128)


    目的:お知らせ情報の一覧に、お知らせカテゴリーのタイプごとに、マークを表示したい。
    問題点:そのためには、お知らせカテゴリーのタイプを取得して、条件分岐したいのですが、取得方法がわからない。

    ■Post Types
     Post Type Slug : information
     Plural Label : お知らせ

    ■Taxonomies
    Taxonomy Slug : info-category
    Plural Label : お知らせカテゴリー

    ■お知らせカテゴリー
    名前 : お知らせ
    スラッグ : info-news(※取得したいデータ)

    名前 : 製品情報
    スラッグ : info-product(※取得したいデータ)

    色々と検索して、試したものの思ったようにスラッグを取得することができておらず、
    お力を貸して頂きたいです。

    よろしくお願い致します。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • 自社のホームページを作成しているときに詰まったのですが、
    返信がつかないのは、そもそもやり方自体が非効率なのかな。

    他の方法でも構わないので、もしわかる方がいらっしゃたら教えて頂きたいです。

    お手数おかけしますが、よろしくお願い致します。

    具体的な例としては、下記のアドレスのお知らせのところの
    青い部分を適切に表示することがやりたいことです。

    お知らせカテゴリーに応じて、表示するマークを変えることが出来ればと思うのですが、
    うまくゆかず・・・お知恵を貸して頂けると助かります。

    http://www.nakano-seiyaku.co.jp/

    関数 get_the_terms() を使えば、個別投稿についているカスタム分類 info-category のターム(info-news や info-product など)を取得できますよ。get_the_terms() の戻り値はタームオブジェクトの配列なので、各タームオブジェクトのフィールド slug の値で条件分岐すれば良いと思います。
    関数リファレンス/get the terms – WordPress Codex 日本語版

    wordpressのコーデックスで条件分岐タグとかtermで検索すると出てくるかも。

    gblsmさま

    ご回答有り難うございます!
    少し諦めつつあったので、嬉しいです。
    関数 get_the_terms()のリファレンスを確認して、使用してみます!

    oisitさま

    ご回答有り難うございます!
    検索テクニック不足のためか、なかなか見つけられなかったのですが、
    get_the_terms()を確認してみて、検索を再チャレンジしてみます!

    gblsmさま

    配列の構造がよくわかってなかったのですが、下記の方法で思ったような情報を取り出すことが出来ました!
    ありがとうございます。

    <?php echo get_the_terms( $post->ID, 'info-category' )[0]->name; ?>

    oisitさま

    条件分岐タグとtermで検索した結果、下記の方法でも、思ったような情報を取り出せました。
    ありがとうございます。

    <?php
    if ( is_object_in_term( $post->ID, 'info-category', 'info-news' ) ) :
    	echo 'お知らせ';
    else :
    	echo 'お知らせじゃない';
    endif;
    ?>

    トピックを解決済みにさせて頂きます。
    gblsmさま、oisitさま、御二方ともありがとうございました!

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「Custom Post Type UIで作成したPost TypesのTaxonomiesのカテゴリのスラッグの取得方」には新たに返信することはできません。