カスタム投稿タイプの条件分岐
カスタム投稿タイプの条件分岐まとめてみました。
目次
カスタム投稿タイプの条件分岐
投稿タイプ
投稿タイプでの条件分岐です。ちなみに通常の投稿はpostが投稿タイプ名です。
<?php if (get_post_type() === '投稿タイプ名'): ?>
//処理
<?php endif; ?>
投稿タイプの個別記事
投稿タイプでの条件分岐ですが、個別記事を判定する時に使います。
<?php if(is_singular('投稿タイプ名')) : ?>
//処理
<?php endif; ?>
カスタム投稿タイプのアーカイブ
アーカイブページの判定
<?php if (is_post_type_archive('投稿タイプ名')): ?>
//処理
<?php endif; ?>
タクソノミーアーカイブ
タクソノミーアーカイブページの判定
<?php if (is_tax('タクソノミー名')): ?>
//処理
<?php endif; ?>
タームアーカイブページ
指定したタクソノミーに属するタームアーカイブページの判定
<?php if(is_tax('タクソノミー名', 'ターム名')): ?>
//処理
<?php endif; ?>
ターム情報
ターム情報を持っているかの判定
<?php if (has_term('ターム名','タクソノミー名')): ?>
//処理
<?php endif; ?>
複数の条件を指定する場合
WordPressはphp製なので論理演算子で複数の条件に対応することも可能です。
カスタム投稿タイプかつ詳細ページの場合
<?php if (get_post_type() === '投稿タイプ名' && is_single()): ?>
//処理
<?php endif; ?>
指定のターム情報を持っている詳細ページの場合
<?php if (has_term('ターム名','タクソノミー名') && is_single()): ?>
//処理
<?php endif; ?>
タームアーカイブページもしくはターム情報を持っている場合
<?php if(is_tax('タクソノミー名', 'ターム名') || has_term('ターム名','タクソノミー名')): ?>
//処理
<?php endif; ?>