カスタムタクソノミーのカスタムフィールドの取得
-
こんにちは。
カスタムタクソノミーについて少し混乱してきたので、教えていただければと思います。
現在カスタム投稿タイプ(Custom Type Post UI)を使い、記事の投稿部分を使っています。
記事のカテゴリは、カスタムタクソノミーで管理したいと思います。カスタム投稿タイプ : magazine_post
カスタムタクソノミー:(スラグ名)
├ category
└ published_year
としています。それぞれのカスタムタクソノミーには、アイコンを設定できるようにカスタムフィールドを追加しました。(category_avatar, published_avatar)
そこで質問ですが、
published_yearに属しているアイコンの値を取得したいので、このように書きましたが、
get_optionがうまくいきません。$catargs = array( 'taxonomy' => 'published_year', 'slug' => "2001" ); $cc = get_categories($catargs); foreach($cc as $c) { $pid = $c->term_id; //確認できました $post = "taxonomy_" . $pid; print_r(get_option("taxonomy_$pid")); //何も入っていません。 the_field('published_avatar', $post); //当然取得できません。 }
やり方を変えて、
$term = get_term_by('slug', "2001", 'published_year'); $id = $term->term_id; $post_id = 'category_' . $id; the_field('published_avatar', $post_id);
これもNGでした。
$post_id = “taxonomy_” . $id
でもだめでした。どこが問題なのか、教えていただけると助かります。
また、理解できない点が1つあります。
私はWPがついているデフォルトの「カテゴリ」機能を使っていないですが、$categories = get_categories("hide_empty=0&exclude=1");
を書くと、 「category」のカスタムタクソノミーで設定したものが取得できてしまいます。
タクソノミーの名前が「category」なのでしょうか。「category」も、「published_year」も、同じカスタムタクソノミーでそれぞれカスタムフィールドアバターを設定しているのですが、「category」は
$cat_info = get_category($cat); //そのcategoryに絞ったとき $cat_slug = $cat_info->slug; $cat_name = $cat_info->name; $post_id = 'category_'. $cat; the_field('category_avatar', $post_id); // 取得できた
で取得できてしまいます。
同じことをやろうとしているのに、なぜ published_yearができていないのか、よく分かりません。
言葉だけでの説明がわかりにくくて申し訳ありませんが、
少しでもアドバイスいただけたらと思います。よろしくお願いいたします。
- トピック「カスタムタクソノミーのカスタムフィールドの取得」には新たに返信することはできません。