カスタム投稿とカスタムフィールドを使い、投稿ループを作成しています。
##困っていること
「sell」というカスタム投稿タイプの投稿ループの中で、「soldout」というフィールドで「SOLD OUT」が選択された場合、投稿をスキップする形をとっています。
しかしその際、スキップされた投稿分、1ページあたりの投稿表示数が減ってしまいます。
(例)WP側の設定でページあたりの投稿表示件数を15件にしているが、SOLD OUTの投稿が2件スキップされると、そのページは13件しか投稿が表示されなくなってしまう。
##実現したい状態
条件に当てはまった投稿がスキップされても、ページあたりの表示件数はこちらで設定した件数を保持したい。
##ソースコード
以下、記載します。
PHP
1 2<?php get_header(); ?> 3<div id="container"> 4 <div id="main"> 5 <h2>中古車販売</h2> 6 <div class="carflex"> 7 <?php if (have_posts()) :?> 8 <?php while (have_posts()) : the_post(); ?> 9 <?php if (get_field('soldout') == "SOLD OUT") continue; ?> 10 <div id="post-<?php the_ID(); ?>" class="carphoto"> 11 <p class="soldout"> 12 <?php if (get_field('soldout') == "SOLD OUT"): ?> 13 <span style=color:#FF0000><?php the_field('soldout'); ?></span> 14 15 <?php else : ?> 16 <?php endif; ?></p> 17 <a href="<?php the_permalink(); ?>" class="carwindow"><?php the_post_thumbnail('medium'); ?></a> 18 <h4><?php the_title(); ?></h4> 19 <table class="sell_table pc"> 20 <tr> 21 <th>価格</th> 22 <td><span style=color:#ff6600><?php the_field('kakaku'); ?>万円</span></td> 23 <th class="sp_none">年 式</th> 24 <td class="sp_none"><?php the_field('model'); ?></td> 25 26 </tr> 27 <tr> 28 <th>走行</th> 29 <td><?php the_field('mileage'); ?>万キロ</td> 30 <th>車検</th> 31 <td><?php the_field('syaken'); ?></td> 32 </tr> 33 </table> 34 <table class="sell_table sp"> 35 <tr> 36 <th>価格</th> 37 <td><span style=color:#ff6600><?php the_field('kakaku'); ?>万円</span></td> 38 </tr> 39 <tr> 40 <th class="sp_none">年 式</th> 41 <td class="sp_none"><?php the_field('model'); ?></td> 42 </tr> 43 <tr> 44 <th>走行</th> 45 <td><?php the_field('mileage'); ?>キロ</td> 46 47 </tr> 48 <tr> 49 <th>車検</th> 50 <td><?php the_field('syaken'); ?></td> 51 </tr> 52 </table> 53 <p class="button"><a href="<?php the_permalink(); ?>"><i class="fas fa-angle-right"></i>詳細を見る</a></p> 54 </div> 55 56 <?php endwhile; ?> 57 <?php endif; ?> 58 59 </div> 60 <?php if (function_exists("pagination")) { 61 pagination($additional_loop->max_num_pages); 62 } ?> 63 </div><!-- /main --> 64 65 66 <?php get_sidebar(); ?> 67 <?php get_footer(); ?> 68 69
##試したこと
ページネーションに問題があるのかと思い、様々なパターンのページネーションを試しました。また、WP_Queryを使ったループの書き方も試してみましたが、改善が見られませんでした。
##環境等
WordPressバージョン:5.7.2
PHPバージョン:7.4.20
何か解決できる方法がございましたら、ご教示頂ければ幸いです。
何卒よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/09 02:09
2021/07/09 02:36 編集
2021/07/09 05:15