wordpress複数ループとかカテゴリー毎のページ送りとか
同じところではまる。。。毎回。。。
その度に懲りずに忘れてるのでφ(`д´)メモメモ…
複数ループ使う時は、ここからこのプログラム使うからねー
と魔法のセリフを忘れないようにする。。。
<?php $temp_query = clone $wp_query; ?> //ループ内容 <?php $wp_query = clone $temp_query; ?>
ページ送りの不具合時404になる時に試してみようプラグイン
「Top Level Categories Fix」
カテゴリーを取得して一覧ページで次のページが同じ内容に初期表示されてしまうときは
<?php query_posts('showposts=ここは表示件数&cat=ここはカテゴリID&paged='.$paged); ?> <?php if (have_posts()): while (have_posts()): the_post(); ?> <?php endwhile; endif;?>
$pagedの書き方に注意。。。
一覧のページナビゲーションをプラグインに頼らず書く場合
<?php query_posts('showposts=ここは表示件数&cat=ここはカテゴリID&paged='.$paged); ?> <?php if (have_posts()): while (have_posts()): the_post(); ?> <?php endwhile; endif;?> <?php /* paging navigation */ global $wp_rewrite; $paginate_base = get_pagenum_link(1); if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) { $paginate_format = ''; $paginate_base = add_query_arg('paged', '%#%'); } else { $paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .user_trailingslashit('page/%#%/', 'paged'); $paginate_base .= '%_%'; } $pagination = array( 'base' => $paginate_base, 'format' => $paginate_format, 'total' => $wp_query->max_num_pages, 'mid_size' => 5,//ここは何ページ表示するか 'current' => ($paged ? $paged : 1), 'prev_text' => '前のページへ', 'next_text' => '次のページへ' ); echo '<div class="page-navi">'."\n"; echo paginate_links($pagination); echo '</div>'."\n"; ?>
この記事を気に入ったら
いいね!&フォローしよう最新情報をお届けします