web-dev-qa-db-ja.com

カスタム投稿タイプのカテゴリ名を表示する

だから私は "staff"と呼ばれるカスタム投稿タイプのいくつかの結果投稿を表示しているカスタムクエリがあります。このカスタム投稿タイプは、「部門」と呼ばれるカスタム分類法にリンクされています。結果を表示することはできますが、各投稿にリンクされているカテゴリを印刷することはできません。

これは私のコードです:

        <?php
          $args = array(
            'post_type' => 'staff', 'posts_per_page' => -1, 'orderby' => 'menu_order', 'order' => 'ASC',
            'tax_query' => array(
              array(
                'taxonomy' => 'departments',
                'field' => 'slug',
                'terms' => 'board'
              )
            )
          );
          $loop = new WP_Query( $args );
        ?>

        <?php if( $loop->have_posts() ): ?>

            <?php while ( $loop->have_posts() ) : $loop->the_post(); ?>

                    <p class="text-center name"><?php the_title(); ?></p>
                    <?php the_category(' '); ?>

            <?php endwhile; ?>        

        <?php endif; ?>

問題は私が使っていることだと思いますが、よくわかりません。

何が間違っている可能性がありますか?

ありがとうございます。

1
Johann

だからこれは私が必要としていたものです:

<?php
$terms = get_the_terms( $post->ID , 'board' );
foreach ( $terms as $term ) {
echo $term->name;
}
?>
4
Johann

このような用語を使う:

$terms = get_the_terms($post->ID, 'Enter_your_taxonomy_here' );
if ($terms && ! is_wp_error($terms)) :
    $tslugs_arr = array();
    foreach ($terms as $term) {
        $tslugs_arr[] = $term->slug;
    }
    $terms_slug_str = join( " ", $tslugs_arr);
endif;
echo $terms_slug_str;
1

誰かが2019年にこれを探している場合。これであなたはURL付きのCUSTOM POST TYPEの名前を取得しています

 <?php
    $terms = wp_get_post_terms( $post->ID, 'PLACE-HERE-YOUR-TAXONOMY');
    foreach ( $terms as $term ) {
       $term_link = get_term_link( $term );
       echo '<a href="' . $term_link . '">' . $term->name . '</a>' . ' ';
       }
  ?>
0
K H