WP-PageNaviでページネーションを実装しました。
固定ページ(single-xxx.php)に「カスタム投稿タイプ」から「求人情報」を出力し、「記事一覧ページ」のようにしました。(「Advance Custom Fields」と「Custom Post Type UI」を使っています)
【参考にしたサイト】『WP-PageNavi』の使い方まとめ
解決したいこと①【2ページ以降が正しく出力されない】
表示数を3にしテストで4記事作成しましたが、2ページ目に飛んでも最初の3記事が表示されてしまいます。
(WordPressの表示設定の「1ページに表示する最大投稿数」は1投稿にしてあります)
コードは下記です。【short-xxx.php】
short
1<?php get_header(); ?> 2 3 <div class="inner"> 4 5 <div class="test-card-wrapper"> 6 <?php 7 $my_query = new WP_Query( 8 array( 9 'post_type' => 'recruit', 10 'posts_per_page' => 3, 11 'tax_query' => array( 12 array( 13 'taxonomy' => 'short', 14 'field' => 'slug', 15 'terms' => array( 16 'short-manufacture', 17 ), 18 ), 19 ), 20 ) 21 ); 22 // $queryの条件で記事の有無を確認 23 if ( $my_query->have_posts() ): 24 25 // $queryの条件で記事を取得するループ 26 while ( $my_query->have_posts() ): 27 $my_query->the_post(); 28 ?> 29 30 <div class="test-card"> 31 <div class="test-border"> 32 <a href="<?php the_permalink(); ?>"> 33 <div class="test-number"><?php the_field('job-number'); ?></div> 34 <div class="test-ttl test-row"><?php the_title(); ?></div> 35 <div class="test-flex flex-between test-row test-padding"> 36 <div class="test-fa"><i class="fas fa-yen-sign"></i> <?php the_field('salary'); ?></div> 37 <div class="test-fa"><i class="fas fa-map-pin"></i> <?php the_field('work-location'); ?></div> 38 <div class="test-fa"><i class="far fa-clock"></i> <?php the_field('working-hours'); ?></div> 39 </div> 40 <div class="test-detail test-padding"><?php the_field('job-detail'); ?></div> 41 </a> 42 </div> 43 </div> 44 45 <?php 46 endwhile; 47 wp_reset_postdata(); // メインクエリの $post グローバル変数を復元するために使用 48 49 endif; 50 ?> 51 </div> 52 <?php 53 $paged = get_query_var('paged') ? get_query_var('paged') : 1; 54 $args = array( 55 'post_type' => 'recruit', 56 'posts_per_page' => 3, 57 'paged' => $paged 58 ); 59 60 $my_query = new WP_Query( $args ); 61 62 if(function_exists('wp_pagenavi')){ 63 wp_pagenavi(array('query'=>$my_query)); 64 } 65 66 wp_reset_postdata(); 67 ?> 68 </div><!-- inner --> 69 70<?php get_footer(); ?> 71
コードは下記です。【functions.php】
functions.php
1// カスタム投稿タイプを設定するregister_post_type関数 2add_action( 'init', 'my_post_type' ); 3function my_post_type() { 4 register_post_type( 5 'recruit', 6 array( 7 'label' => '求人募集', 8 'public' => true, 9 'hierarchical' => true, 10 'has_archive' => true, 11 'menu_position' => 3, 12 'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'page-attributes') 13 ) 14 ); 15}
解決したいこと②【ページネーションが正しく表示されない】
また、ページネーションの表示数を2ページしかない場合は「①②」だけ表示されるようにしたいのですが、WP-PageNaviの設定からでは出来ないのでしょうか?
(現在はWP-PageNaviの設定で「表示するページ数」を3にしているので2ページ分しかないのに、ページネーションが①②③と3つ表示されてしまっています)
【参考にしたサイト】WordPressページナビゲーションを作成するプラグインWP-PageNavi
どなたかご教示ください、よろしくお願いいたしますm(_ _)m
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。