Yuriko.Net 個別記事

2008-08-06
晴れ

WP-PageNavi を使わずにナビゲーション表示 (改良版)

ゆりこ による 17:07:47 の投稿
カテゴリー: WordPressハック,更新履歴
タグ: ,

ナビゲーションのサンプル画像

先月下旬に、「WP-PageNavi を使わずにナビゲーション表示」というテクニックを公開しましたが、パーマリンクを使っていても検索などクエリー文字列を使う URL の場合 (http://example.com/?s=検索文字列 など)、不具合が起きることが分かりました。

そこで、全面的に変更したものに差し替えます (元記事も新しいコードに入れ換えてあります)。ここまで長くなると、関数化した上でテーマの functions.php に切り出して、index.php 等からはその関数を呼び出す方がいいですね。

<div class="tablenav"><?php 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 .= '%_%';
}
echo paginate_links( array(
	'base' => $paginate_base,
	'format' => $paginate_format,
	'total' => $wp_query->max_num_pages,
	'mid_size' => 5,
	'current' => ($paged ? $paged : 1),
)); ?></div>

トラックバック・コメント »

  1. ページナビゲーション機能を改版してみたり

    ゆりこさんとこで知った,ページナビゲーションの実装方法
    改版されていたんで,ちょろっと変えてみた

    function.phpに書き出したほうがいいかなぁ〜?
    ってことで,function.php対応版へ若…

    吟遊詩人の戯言からのトラックバック

上に戻る

※スパム対策プラグインの影響により、すぐにトラックバックが反映されない場合があります。お手数ですが、半日ほど待ってみてください。

コメント返信

※発言の責任を明確にするため「名無し」「通りすがり」「匿名希望」等の匿名は不可とします。捨てハンドルでもいいので必ず名乗ってください。
XHTML (使えるタグ): <a href="" title="" ktai=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt=""> .
※スパム対策プラグインの影響により、すぐにコメント内容が表示されない場合があります。お手数ですが、半日ほど待ってみてください。

上に戻る