質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

0回答

845閲覧

カスタムタクソノミーで作成したカテゴリーを一覧で表示させたい

yesma

総合スコア16

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2020/05/28 10:39

カスタム投稿で作成した、記事をカテゴリーごとの一覧ページを作成しようと思っているのですが、
うまくできず、全件表示されてしまいます。

1.functions.phpにカスタム投稿とタクソノミーを記述して作成
2.カスタム投稿のアーカイブページにカテゴリーをリンク付きで表示
3.カテゴリーをクリックすると、taxnomy-support_info.phpに移動してカテゴリーに絞った記事を表示させたい ←ここができないです。

なにか見落としがあるかご教授お願いします。

functions.php : カスタム投稿とタクソノミーを作成
sidebar-support.php : タクソノミーリンクを作成箇所
taxonomy-support_info.php : カテゴリーを縛った記事を表示させたい※現状全件表示されています。

functions.php

1// サポートの追加 2 3function support_create_post_type(){ 4 register_post_type('support', 5 array( 6 'labels' => array( 7 'name' => 'サポート情報', 8 'singular_name' => 'サポート情報', 9 ), 10 'public' => true, 11 'menu_position' => 5, 12 'has_archive' => true, 13 'hierarchical' => true, 14 'taxonomies' => array('support_info'), 15 'supports' => array( 16 'title', 17 'editor', 18 'excerpt', 19 'thumbnail', 20 'custom-fields', 21 ), 22 ) 23 ); 24} 25add_action('init', 'support_create_post_type', 1); 26 27//サポートの追加カテゴリの追加 28 29function support_create_taxonomies(){ 30 $labels = array( 31 'name' => 'カテゴリーの追加', 32 'singular_name' => 'カテゴリーの追加', 33 'parent' => 0, 34 'orderby' => 'description' 35 ); 36 37 register_taxonomy('support_info',array('support'), 38 array( 39 'hierarchical' => true, 40 'labels' => $labels, 41 'show_ui' => true, 42 'show_admin_column' => true, 43 'show_in_nav_menus' => true, 44 ) 45 ); 46} 47add_action('init', 'support_create_taxonomies', 0); 48 49?>

sidebar

1<div class="pc_aside"> 2 <dl> 3 <dt>サポート情報分類</dt> 4 <dd><?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'support_info', 'show_count' => 0 ) ); ?></dd> 5 </dl> 6 </div>

taxonomy

1<?php get_header(); ?> 2 3 <section class="breadcrumbs"> 4 <ul> 5 <li><a href="/">ホーム</a></li> 6 <li><a href="/"><?php $terms = get_the_terms( $post->ID, 'support_info'); 7 if (! is_wp_error($terms) && $terms) : 8 foreach ( $terms as $term) : ?> 9 <?php echo esc_html($term->name); ?> 10 <?php 11 endforeach; 12 endif; 13 ?></a></li> 14 </ul> 15</section> 16 17<main> 18 <article> 19 <section class="intro"> 20 <h3 class=""><?php $terms = get_the_terms( $post->ID, 'support_info'); 21 if (! is_wp_error($terms) && $terms) : 22 foreach ( $terms as $term) : ?> 23 <?php echo esc_html($term->name); ?> 24 <?php 25 endforeach; 26 endif; 27 ?> 28 </h3> 29 </section> 30 <section class="contents"> 31 <div class="support_item"> 32 <ul> 33 <?php 34 $args = array( 35 'post_type' => 'support', /* カスタム投稿名 */ 36 'posts_per_page' => 9999, /* 表示する数 */ 37 ); ?> 38 <?php $my_query = new WP_Query( $args ); ?> 39 <?php if ( $my_query->have_posts() ) : while ( $my_query->have_posts() ) : ($my_query->the_post() ); ?> 40 <?php $terms = get_the_terms( $post->ID, 'support_info'); 41 if (! is_wp_error($terms) && $terms) : 42 foreach ( $terms as $term) : ?> 43 <li><span class="day" data-text="<?php echo esc_html($term->name); ?>"><?php the_time('Y.m d'); ?></span><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> 44 <?php 45 endforeach; 46 endif; 47 ?> 48 <?php endwhile; else : ?> 49 <?php wp_reset_postdata(); ?> 50 <!--投稿が見つからない--> 51 <p>申し訳ございません。ただいま準備中です。</php> 52 <!--//投稿が見つからない--> 53 <?php endif; ?> 54 </ul> 55 </div> 56 </section> 57 <section class="sp_guide"> 58 <ul> 59 <?php wp_list_categories( array('title_li' => '', 'taxonomy' => 'support_info', 'show_count' => 0 ) ); ?> 60 </ul> 61 </section> 62 </article> 63 64 <?php get_template_part('parts/sidebar-support'); ?> 65</main> 66 67<?php get_footer(); ?>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問