WP タクソノミー取得方法 スラッグ


タクソノミーのスラッグどうやって取ってくるんだっけ??
ってなった時用に、たまに使うものたちです。

ソースコード

<?php 
 //全てのタクソノミー情報を取得
  $terms = get_terms('タクソノミースラッグが入ります。');
  echo $term->slug; // スラッグ取得

  //現在表示中のタクソノミー取得(すべて)
 //なおこの時、複数のカテゴリーに所属する記事があれば複数取得してくる。

  $page_terms = wp_get_object_terms( $post->ID, 'achievements_cat');
  $page_term = $page_terms[0]->slug; 
// 1つ目のカテゴリースラッグ取得

  //現在表示中のタクソノミー取得(現在ページが表示している)
  $tax = get_queried_object();
  $tax_slug = $tax->slug;
// ページ表示中のカテゴリースラッグ取得
  ?>

使用例


例)ターム一覧ボタンを作成し、現在表示しているボタンだけクラス名を付与する。

  <?php
  foreach ( $terms as $term ) {
    if($tax_slug == $term->slug){
        $class = 'current';
    }
    else{
        $class = "";
    }
    echo '<li class="'.$class.'">';
    echo '<a href="'.get_term_link($term).'">'.$term->name.'</a>';
    echo '</li>';
  }
?>

投稿者 @rongai