WordPressに関連記事をつけてみよう 〜実装〜
冷やし中華 始めました
ご無沙汰しています、@Tanin_326です。
WordPressの自作テーマに、関連記事を追加しました。
プラグインではなく、single.phpに直接コードを書いています。
手順としては、こんな感じです。
- 投稿のIDから、カテゴリを取得する
- カテゴリIDの一覧を作る
- WP_Queryで、カテゴリのリクエスト(投稿ID以外)を取得する
- カテゴリのリクエストを使って、関連記事を表示させる
- カテゴリのリクエストをクリアする(とても重要)
<?php $categories = get_the_category( $post->ID ); ?> <?php if ( $categories ): ?> <?php $category_ID = array(); foreach ( $categories as $category ) { array_push( $category_ID, $category->cat_ID ); } $the_query = new WP_Query( array( 'post__not_in' => array( $post->ID ), 'posts_per_page' => 4, 'category__in' => $category_ID, 'orderby' => 'rand', ) ); ?> <section class="singlePage__related"> <?php if ( $the_query->have_posts() ): ?> <h2 class="singlePage__subtitle">関連記事</h2> <div class="related"> <?php while ( $the_query->have_posts() ): $the_query->the_post(); ?> 【ここに、関連記事の表示を書く】 <?php endwhile; ?> </div> <?php else: ?> <p>関連記事はありません</p> <?php endif; ?> </section> <?php wp_reset_postdata(); ?> <?php endif; ?>
以上、@Tanin_326でした。