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

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

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

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

ページネーション

Webアプリケーションにおいて、1ページに収まらないコンテンツを、各ページへのリンクを並べてアクセスしやすくする手法をページネーションと呼びます。

ループ

ループとは、プログラミングにおいて、条件に合致している間、複数回繰り返し実行される箇所や、その制御構造を指します

Q&A

解決済

1回答

836閲覧

WordPressのサブループのページネーションがうまく機能しない

bluemarron

総合スコア11

WordPress

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

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

ページネーション

Webアプリケーションにおいて、1ページに収まらないコンテンツを、各ページへのリンクを並べてアクセスしやすくする手法をページネーションと呼びます。

ループ

ループとは、プログラミングにおいて、条件に合致している間、複数回繰り返し実行される箇所や、その制御構造を指します

0グッド

0クリップ

投稿2020/11/15 00:20

編集2020/11/15 00:22

質問失礼します。

現在、WordPressでWebサイトを制作しているのですが、
サブループのページネーションがうまく機能せずに困っています。

具体的には、ページを切り替えても、1ページ目が表示されてしまうという不具合です。
たとえば、現在1ページ目にいるとして、ページネーションの「2」や「次へ」でページ遷移しても、
2ページ目は表示されず、また1ページ目が表示されてしまいます。

コードはこちらの記事を参考に実装しました。
https://haniwaman.com/loop/

コードは下記の通りなのですが、どこが間違っているのかわかりません。
もしおわかりになる方がいらっしゃいましたら、ご指導いただければ幸いです。
よろしくお願いします。

PHP

1<?php 2 $news_query = new WP_Query( 3 array( 4 'post_type' => 'post', 5 'posts_per_page' => 8, 6 ) 7 ); 8 ?> 9 <div class="container"> 10 <ul class="news-list"> 11 <?php if ( $news_query->have_posts() ) : ?> 12 <?php while ( $news_query->have_posts() ) : ?> 13 <?php $news_query->the_post(); ?> 14 <li> 15 <a href="<?php the_permalink(); ?>"> 16 <time datetime="<?php echo esc_attr( get_the_date( DATE_W3C ) ); ?>"><?php echo esc_html(get_the_date()); ?></time> 17 <h1><?php the_title(); ?></h1> 18 </a> 19 </li> 20 <?php endwhile; ?> 21 <?php else: ?> 22 <li> 23 <h1 class="no-post">〇〇に関するお知らせ欄です。今後の投稿をお待ちください。</h1> 24 </li> 25 <?php endif; ?> 26 <?php wp_reset_postdata(); ?> 27 <?php 28 $big = 999999999; 29 echo paginate_links( array( 30 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 31 'current' => max( 1, get_query_var( 'paged' ) ), 32 'total' => $news_query->max_num_pages, 33 'mid_size' => 1, 34 'end_size' => 1, 35 'prev_text' => '前へ', 36 'next_text' => '次へ', 37 'type' => 'plane', 38 ) ); 39 ?> 40 </ul> 41 <ul class="monthly-list"> 42 <div>アーカイブ</div> 43 <?php wp_get_archives( 'post_type=post&type=monthly&show_post_count=1' ); ?> 44 </ul> 45 </div>

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

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

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

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

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

guest

回答1

0

自己解決

こちらの質問ですが、自己解決できました。

'paged' => $paged,

を追記することで正常に動きました。

PHP

1'post_type' => 'post', 2'paged' => $paged, 3'posts_per_page' => 8,

すでに解決に向けて調べてくださっていた方がいらっしゃいましたら申し訳ありません。
感謝申し上げます。

投稿2020/11/15 00:53

bluemarron

総合スコア11

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問