これはかなり簡単なはずですが、Web上のどこにも答えが見つかりませんでした。私が見つけたすべての答えは親密でしたが、私が必要としたものとは正確には一致しませんでした。私が必要としているのは、私がいるカスタム投稿タイプの現在の用語だけを表示することです すべての用語が1つだけではありません! (関連するもの)
これは私が使っているものですが、それは私にとって良くないすべての用語を表示します:
<?php
$taxonomy = 'genre';
$queried_term = get_query_var($taxonomy);
$terms = get_terms($taxonomy, 'slug='.$queried_term);
if ($terms) {
foreach($terms as $term) {
echo $term->name;
}
}
?>
覚えておいてください - 私は私の単一の投稿タイプのテンプレートにそれを表示したいのですが誰でも提案できますか?ありがとう
さて、それで私はここで私が必要としているものをついに見つけました: WordPressの私のカスタム分類学で現在の用語を取得する方法?
最後の更新は@ user3208によるものです。
<?php // Get terms for post
$terms = get_the_terms( $post->ID , 'oil' );
// Loop over each item since it's an array
if ( $terms != null ){
foreach( $terms as $term ) {
// Print the name method from $term which is an OBJECT
print $term->slug ;
// Get rid of the other data stored in the object, since it's not needed
unset($term);
} } ?>
これで私の問題は解決しました!ありがとう
代わりに wp_get_post_terms
を使用してください。
$terms = wp_get_post_terms( $post_id, $taxonomy, $args );
get_terms
は分類法に存在するすべての用語をあなたに与えます。
更新:
global $post;
$terms = wp_get_post_terms( $post->ID, 'genre');
print_r($terms); #displays the output
User3208がコーディングしたものを取り上げて、URLを用語に追加するコードを少し追加しました。それが誰かに役立つことを願っています。
<?php // Get terms for post
$terms = get_the_terms( $post->ID , 'oil' );
// Loop over each item since it's an array
if ( $terms != null ){
foreach( $terms as $term ) {
$term_link = get_term_link( $term, 'oil' );
// Print the name and URL
echo '<a href="' . $term_link . '">' . $term->name . '</a>';
// Get rid of the other data stored in the object, since it's not needed
unset($term); } } ?>