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

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

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

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

解決済

カスタム投稿アーカイブで2ページ目以降がすべて1ページ目と同じになってしまう。

cheche0830
cheche0830

総合スコア0

WordPress

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

1回答

0評価

0クリップ

6861閲覧

投稿2020/05/22 04:06

表題の通り下記のコードにてカスタム投稿アーカイブ(archive-news.php)にページネーションのwp-pagenaviプラグインを導入してやってみたのですが、2ページ目以降は一件表示されているかと思ったのですがよく見たらページの内容がすべて同じでした。どこがおかしいでしょうか?

試したこと:
プラグインが原因かと思い普通に
the_post_navigation( $args )
なども使用してみたが同様の結果。

表示する投稿数が管理画面の表示件数と一致してないと動かない場合があると見たので、
20でそろえたが変化なし。

<?php $taxonomy_names = get_post_taxonomies(); $terms = get_the_terms( $post->ID, $taxonomy_names ); foreach ( $terms as $term ) { $id = $term->term_id; $name = $term->name; // 名前 $slug = $term->slug; // スラッグ $des = $term->description; // ディスクリプション } ?> <div class="grid"> <?php $postTypeName = 'news'; //投稿タイプの名前 $num = 20; //表示する投稿の数 -1で全部 $args = array( 'posts_per_page' => $num, 'post_type' => $postTypeName ); $myPost = get_posts( $args ); foreach ( $myPost as $post ): setup_postdata( $post ); $term_name = ''; $terms = get_the_terms( $post->ID, 'news_category' ); $length = count( $terms ); if ( is_array( $terms ) ) { foreach ( $terms as $key => $term ) { if ( $key === $length - 1 ) { $term_name .= $term->name; } else { $term_name .= $term->name . ', '; } } } ?> <a href="<?php echo the_permalink(); ?>"> <div class="in"> <p class="tit"><?php echo $title = get_the_title( ); ?></p> <ul class="keywords"> <?php if ( $terms = get_the_terms( $post->ID, 'news_tag' ) ) { foreach ( $terms as $term ) { ?> <li> <p><?php echo $term->name; ?></p> </li> <?php } } ?> </ul> </div> </a> <?php endforeach; ?> </div> <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

WordPress

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