先日タンブラーのために導入したAutoPagerizeですが色んなサイトで使えてます。
Google、flickr、twitter、mixi、各種ブログ等々。
ただ、逆に色んなサイトで使えすぎて「このサイト要らない」ってこともあります。
そんなときは「除外パターン」を設定できるのでご安心ください。

なお、当ブログでも「対応している」と書きましたがどうも中途半場に対応していたようで、
トップページや各カテゴリーページのみ2ページ目までしか対応してませんでした。

【PR】
薩摩切子 オールドファッションズタンブラー C-15 ルリ
薩摩切子 オールドファッションズタンブラー C-15 ルリ


そこで、ブログやWebサイトをAutoPagerizeに対応させる方法を探してみました。

見つかったのは作者さんのページ。
AutoPagerize0.0.11 - SWDYH
埋め込みの形式は以下の通りです
  • link要素またはa要素でrel="next" (複数あった場合は、先に現れるものが選ばれます)
  • classでautopagerize_insert_before (複数あった場合は、先に現れるものが選ばれます)
    • 追記 2008/05/15 けっこう前からなくても大丈夫になってます。
    • ない場合、最後のautopagerize_page_elementの後ろに入ります。
  • classでautopagerize_page_element (複数指定可、指定したもの全てが挿入されます)
以上、3つをHTMLに盛り込めば良いみたいです。
実際は「rel="next"」を次のページに飛ばすためのリンクに書き込んで、繰り返しになるパターン部分にDIVタグでも入れて「class="autopagerize_page_element"」を付けてあげればOK。

これさえ覚えておけばどんなサイトを作ってもAutoPagerizeに対応できます。

さて、それでは当ブログ(ライブドアブログ)の場合はどうでしょうか?
そこでソースを覗いてみると、なぜか「autopagerize_page_element」だけが存在しています。
だから中途半端に適応されていたのかな?

ならばと次のページへ飛ばすためのリンクに「rel="next"」を追加してみるとそれだけでできてしまいました。
ただ、「カテゴリアーカイブ」「月別アーカイブ」に関してのみ。
「個別記事ページ」に関しては「autopagerize_page_element」がなかったので追加することでなんとかなりましたが、問題は「トップページ」。
インデックスのところに<$IndexNavigator$>が配置されているために直接タグを編集することができません。

そこで再び探してみると今度は以下のサイトを見つけました。
□ livedoor blogのAutoPagerize対応方法 - 虹色☆吐息
こちらを参考にして、
<div class="paging-outer<UnlessPrevPage><UnlessNextPage> paging-none</UnlessNextPage></UnlessPrevPage>">
<$IndexNavigator$>
</div>
<div class="nextpage"><IfPrevPage><a href="<$CurrentUrl$>?p=<$PrevPage$>" rel="prev">前のページへ</a></IfPrevPage>
<IfNextPage><a href="<$CurrentUrl$>?p=<$NextPage$>" rel="next">次のページへ</a></IfNextPage></div>
に書きかえればOK。
あとはCSSを調整すれば出来上がり。

なお、「個別記事ページ」に関してはAutoPagerizeに対応させる必要があったかなぁといまだに悩んでいます。
どうでしょうね?