2022/03/17 (Thu)
WordPress
【WordPress】カスタム投稿の記事をタグ一覧ページに表示させる方法
tag.phpなどのタグアーカイブページで、該当タグがついたカスタム投稿記事を表示させたい!
でもなぜかうまくいかない…と行き詰ってしまった時に解決した方法です。
うまくいかない原因は様々ですが、同じように困っている方は下記の設定がきちんとできているか確認してください。
tag.phpは通常の投稿タイプ(post)しか表示しない
まぁ初歩的な問題だったのですが、tag.phpはデフォルトの設定のままだと、通常の投稿タイプ(post)しか表示しません。
そのため、カスタム投稿タイプもタグのアーカイブに表示させたい場合は、functions.phpに下記の記述をする必要があります。
/* WPタグのアーカイブページにカスタム投稿タイプも表示させる
---------------------------------------------------------------------------- */
function add_post_tag_archive( $wp_query ) {
if ($wp_query->is_main_query() && $wp_query->is_tag()) {
$wp_query->set( 'post_type', array('post','タクソノミースラッグ'));
}
}
add_action( 'pre_get_posts', 'add_post_tag_archive' , 10 , 1);
あとは他のアーカイブページ同様、tag.phpにループの記述をするだけで各タグの一覧ページが作成できました。