記事表示件数の変更とページ送りについて
-
記事の表示はうまくいっているのですが、ページ送りで躓いています。
長くなりますが、もし分かる方がいらっしゃいましたらよろしくお願いいたします。WordPress2.6で、yet another photologというプラグインを使用し、
フォトログを作成しています。実現させたいことは、
- TOPページ:最新の投稿6件表示、残りはページング(<previous | next>)で送る。
- アーカイブページ:20件表示、残りはTOPページと同じくページング。
下記のように設定したところ、
TOPページで next>と続けてページをめくっていくと、最後の方で「ページが見つかりません(404)」という表示になってしまいます。
最初の数ページは何故か上手くいくのです。TOPページ:
<?php query_posts($query_string . "&showposts=6"); ?> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> ~記事表示~ <?php endif ?> <?php endwhile; else: ?> <?php _e('Sorry, no posts matched your criteria.'); ?> <?php endif; ?> <?php previous_posts_link('< Previous Page'); ?> <?php next_posts_link('Next Page >'); ?>
アーカイブページ:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> ~記事表示~ <?php endif ?> <?php endwhile; else: ?> <?php _e(' Sorry, no posts matched your criteria.'); ?> <?php endif; ?> <?php previous_posts_link('< Previous Page'); ?> <?php next_posts_link('Next Page >'); ?>
アーカイブページの方はquery_postsを使っていないので、管理画面の表示設定で「20件」と設定しています。こちらの方はきちんと最後まで表示され、問題はありません。
最近気づいたのですが、管理画面の表示設定で指定した件数が、query_postsで指定した件数より多いと、そのような現象が起きるようです。
【TOPページの例】
きちんと表示される:
<?php query_posts($query_string . "&showposts=6"); ?> + 管理画面での設定「3件」
最後の数ページは「みつかりません」:
<?php query_posts($query_string . "&showposts=6"); ?> + 管理画面での設定「20件」
現在は両方ともquery_postsで表示件数を指定して、管理画面の表示件数の設定を「1」にしてしのいでいますが、管理画面の表示件数とquery_postsがケンカしてしまってるのでしょうか?
query_postsの書き方が悪いのでしょうか。。。?(使い方がよくわからず。。。)良いアイディアがありましたら、ご教授ください。
- トピック「記事表示件数の変更とページ送りについて」には新たに返信することはできません。