1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

WordPress カスタム投稿に役立つターム出力方法 いろいろ

Last updated at Posted at 2017-11-23

現在表示しているページのカスタム投稿名を表示

php
$gpt=get_post_type();
echo $gpt;

タクソノミーで条件分岐(アーカイブページの時)

php
<?php if(is_tax('タクソノミー名', array('ターム名1','ターム名2'))): ?>
//trueの挙動を書く
<?php endif; ?> 

カスタムタクソノミーの情報を色々取得する

php
  //  タームの情報を取得する
    $tarms =  get_the_terms( $post ->ID, 'gallery_area_cat' );
    // ↓取得したデータが配列かの判定
    if (! is_array($tarms)) {
    // $tarms に配列データが入ってない場合の処理
    $tarms = array(array('title'=>'該当するデータはありません'));
    } else {
    // $tarms に配列データが入っていた場合は foreach 
    foreach ( $tarms as $tarm ) {
        $sidemenu_active01 = $tarm -> term_id;
    } 
}

term_id        //ID
name         //名前
slug         //スラッグ
term_group      //グループID
term_taxonomy_id  //タクソノミーID
taxonomy       //タクソノミー名(カテゴリーの場合はcategory、タグの場合はpost_tag
description     //説明
parent        //親カテゴリーID(親カテゴリーがない場合は0
count         //投稿数

#single.php

ターム名だけをリンク付きで表示 ※$post->IDで現在のページのID番号を所得する

php
echo get_the_term_list($post->ID, 'タクソノミー名');

ターム名だけをリンク無しで表示

php
if ($terms = get_the_terms($post->ID, 'タクソノミー名')) {
    foreach ( $terms as $term ) {
        echo '<li>' . esc_html($term->name) . '</li>';
    }

目的とするtermを持っているか判断

php
if (has_term( $term,$taxonomy )) {
  echo "カテゴリーがあります!";
}else{
  echo "ありません!";
}

#taxonomy.php

ターム名だけをリンク無しで表示

php
single_tag_title();

#archive.php

ターム名のみリンク付きで表示

php
echo get_the_term_list($post->ID,'タクソノミー名');
1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?