ページごとに表示数を変更 『wordpress』


今回はページごとに表示数を変更できないか調査してみた。
本文を載せる場合などは、1ページに表示する投稿の数は少なくてもよいが、
http://memories.zal.jp/WP/?p=382 
(表示デザインの変更) でしたように
本文を表示せずにタイトルなどだけの一覧にする場合などでは、
表示数を増やしたい場合がある。

投稿内容を表示する前に
<?php query_post('posts_per_page=10'); ?>
を1行追加します。 

これでそのページの投稿数表示は最大で10件になります。
アーカイブなどクリックしたときも、このまま追加したままでは、
どのアーカイブなのかという条件が維持できていません。
それで、そのページの条件を維持する為、【$query_string】を追加します。

<?php query_posts($query_string .'&posts_per_page=10'); ?>

これでアーカイブごとのページでもページ数を変更できました。
ページタイトルを取得する関数や、カテゴリDなどを取得する関数が
ありますので、そのような関数を利用してif文やswitch文で分岐すれば
各ページごとに表示数を好きに変更できます。

http://memories.zal.jp/WP/?p=388 では
「投稿日時の古い順に表示する」為 同じような操作をしました。
こちらと組み合わせるには「&」を挟んで書いていくだけです。

<?php query_posts($query_string .'&posts_per_page=10&order=ASC'); ?>

これで、1ページの表示数 最大10件、投稿の古い順になります。
クエリで 「limit 10」「order by asc」に該当します。

なお、全投稿数が、1ページの投稿数を超えると、
ページの「前へ」と「次へ」のリンクが表示されますが、

<div class="navigation">
   <div class="alignleft">
   <?php next_posts_link(__('&laquo; Older Entries', 'kubrick')); ?>
 </div>
   <div class="alignright">
   <?php previous_posts_link(__('Newer Entries &raquo;', 'kubrick')); ?>
 </div>
</div>

これより前に、追加しないと新しい1ページの表示数が反映されませんので
注意してください。


「ページごとに表示数を変更 『wordpress』」への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です