うさぎのイラスト

ネットアンサー55備忘録

web技術を書いていきます

カスタム投稿のタームの出力いろいろ

-2015年05月29日-

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

<?php $gpt=get_post_type(); ?>
<?php echo $gpt; ?>				

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

<?php if(is_tax('fruit_cat', 'apple')): ?>
 //
<?php endif; ?>			

タクソノミーで条件分岐(アーカイブページの時)(タームが複数ある時)

<?php if(is_tax('fruit_cat', array('apple','orange'))): ?>
 //
<?php endif; ?>

現在表示しているページのカスタム投稿名(英語)※最後に[_cat]を付属している

<?php $cat=(get_post_type_object(get_post_type())->name).'_cat'; ?>
<?php wp_list_categories(array('title_li' => '', 'taxonomy' => $cat, 'show_count' => 1)); ?>

現在表示しているページのカスタム投稿名(日本語)

<?php $postname=get_post_type_object(get_post_type())->label; 
echo $postname;
?>

カスタムタクソノミーの情報を色々取得する(空なら反応はしない仕様)

※wp_get_post_termsでも代替できる、しかも条件を加える事ができる。
<?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でその記事のタームを表示

カスタムタクソノミー:タームタイトル
<?php the_taxonomies( $args ); ?>
ターム名だけをリンク付きで表示 ※$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>' .$term->name. '</li>';
    }
}
?>
目的とするtermを持っているか判断
<?php
//wp関数:term exists使用(この投稿記事が目的とするtermを持っているか判断)
//has_term($term,$taxonomy)
//存在しない場合は 0 (false) を返します。 

if (has_term( 'top', 'owners_cat' )) {
  echo "カテゴリーがあります!";
}else{
  echo "ありません!";
}
?>

taxonomy.phpでその記事のタームを表示

ターム名だけをリンク無しで表示
<?php single_tag_title(); ?>
ターム名だけをリンク有りで表示
<?php echo get_the_term_list($post->ID,'タクソノミー名'); ?>
ターム名だけをリンク有りで表示、尚且つ複数タームが存在するときは・で区切る
<?php echo get_the_term_list($post->ID,'タクソノミー名','','・'); ?>

archive.phpでその記事のタームを表示

ターム名のみリンク付きで表示
<?php echo get_the_term_list($post->ID,'タクソノミー名'); ?>
参考サイト
webデザイナーしおり
WordPress カスタムタクソノミーのタームのスラッグを取得する
それからデザイン スタッフブログ