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

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

新規登録して質問してみよう
ただいま回答率
85.48%
jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

WordPress

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

Q&A

1回答

641閲覧

1ページに複数の無限スクロールを実装する

nobureon2

総合スコア21

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

WordPress

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

0グッド

1クリップ

投稿2019/05/07 07:18

以下のJQueryのプラグインを利用して、Wordpressのカスタム投稿記事の無限スクロールを実装しています。
1クエリに対しては正常に動作したのですが、1ページに複数の無限スクロールを表示させる必要があり、
その場合はうまく動きません。実装方法と実現可否を教えてもらえないでしょうか?
jquery.autopagerで不可能な場合は、ほかのやり方を教えてほしいです。よろしくお願いします。

jquery.autopager-1.0.0

参考にしたサイト

php

1  <?php 2 // $argsは省力 3 $the_query = new WP_Query( $args ); // 新規WP queryを作成 変数argsで定義したパラメータを参照 4 if( $the_query->have_posts() ):?> 5 <?php while( $the_query->have_posts()) : $the_query->the_post(); 6 // ------------------ ここから繰り返し ------------------- ?> 7 <div class="new-post"> 8 // ここにカスタム投稿で表示したい内容を入れています。 9 </div> 10 <?php // ------------------ 繰り返しここまで ---------------- 11 endwhile; ?> 12 <?php 13 // --------------- 新着情報WP_query終了 --------------------------- 14 wp_reset_postdata(); 15 endif; 16 ?> 17 <div id="next"> 18 <a href="<?php echo next_posts(0, false); ?>">続きはこちら</a> 19 <img id="loading" src="<?php echo get_template_directory_uri() ?>/images/support-loading.gif" alt="読み込み中" width="29" height="29"> 20 </div> 21 // 上記を複数回繰り返し使いたい。 22 23 // JSはPHPファイル内で取り込み 24 <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 25 <script src="<?php echo get_template_directory_uri() ?>/js/jquery.autopager-1.0.0.js"></script> 26 <script> 27 var maxpage = <?php echo $wp_query->max_num_pages; ?>; // 最大ページ数取得 28 $('#loading').css('display', 'none'); // ローディング画像は一旦消す。 29 $.autopager({ 30 content: '#article-list',// 読み込むコンテンツ 31 link: '#next a', // 次ページへのリンク 32 autoLoad: false,// スクロールの自動読込み解除 33 34 start: function(current, next){ 35 $('#loading').css('display', 'block'); 36 $('#next a').css('display', 'none'); 37 }, 38 39 load: function(current, next){ 40 $('#loading').css('display', 'none'); 41 $('#next a').css('display', 'block'); 42 } 43 }); 44 45 $('#next a').click(function(){ // 次ページへのリンクボタン 46 $.autopager('load'); // 次ページを読み込む 47 return false; 48 }); 49 </script>

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

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

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

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

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

guest

回答1

0

「続きはこちら」を押した後も、「続きはこちら」のリンク先が変わっていないので、同じページを読み込もうとしてエラーになっているのだと思います。

修正例

javascript

1//2番目以降に読み込む投稿ページurlの配列を追加 2//phpで動的に作成するなどして下さい。 3var urls = [ 4 'https://a.com/05/', 5 'https://a.com/06/', 6 'https://a.com/07/', 7 'https://a.com/08/', 8]; 9 10$('#next a').click(function(){ // 次ページへのリンクボタン 11 $.autopager('load'); // 次ページを読み込む 12 $(this).attr('href', urls.shift()); //[続き]リンク先を変更 13 if(urls.length===0) $(this).remove(); //すべて読み込んだら[続き]を削除 14 return false; 15});

投稿2019/05/07 09:05

webgoto

総合スコア1293

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問