さくらのブログ(=OEM Seesaa)で、ページャの代わりとして、リンクをそれっぽく仕込むちょっとした工夫(ただし月一回程度の手動更新発生)

2008年3月23日

さくらのブログ(=OEM Seesaa)で、ページャの代わりとして、リンクをそれっぽく仕込むちょっとした工夫(ただし月一回程度の手動更新発生)

さくらのブログ(=OEM Seesaa)(以下、さくらのブログ)で、
最も致命的な仕様として、トップページにページャが
出せない
ということがあります。

ページャというのはページ送りのことです。
これがないと何が問題なのか。

トップページをずーっと下まで記事を順番に読んでゆき
続きのページへ…… 。。。。あれ? どこへもジャンプできない!?

ということになるんですよね。
これってかなり致命的です。考えてみれば。

ざっと他のブログとか見てもらえれば分かりますが
ブログでは普通、トップページに
ページャはあります^^;

さくらのブログでは
過去ログビューやカテゴリビューにあるページャを
インデックスで動作させようと思っても、できません。(たぶん)。

というわけで、これはどうにかならないか、ということで、
私が考えた、ページャの代わりとして、
リンクをそれっぽく仕込むちょっとした工夫。です。(前置き長^^;

。。。

まず下ごしらえとして、
トップページと過去ログビューのデフォルト表示件数を合わせます。
※ここらの操作説明は割愛。

それが出来たら
デザイン -> コンテンツ -> 記事 -> コンテンツHTML編集
といってもらって、記事ロジックソースを開きます。

<% if:page_name eq 'archive’ -%>
<% if:archive_page_name eq 'month’ -%>
<% if:pager.need_pager -%>
<div class="navi" style="margin-bottom: 30px;">
<% if:pager.previous_page %><span class="p_10 b_green_btn"><a href="<% archive.page_url(pager.previous_page) %>"><% /if %><<<% if:pager.previous_page %></span></a><% /if %><% loop:list_pager %> <% if:current_page ne pager_number %><span class="p_10 b_green_btn"><a href="<% archive.page_url(pager_number)%>"><% /if %><% pager_number %><% if:current_page ne pager_number %></span></a><% /if %> <% /loop %><% if:pager.next_page %><span class="p_10 b_green_btn"><a href="<% archive.page_url(pager.next_page) %>"><% /if %>>><% if:pager.next_page %></span></a><% /if %>
</div>
<% /if -%>
<% /if -%>
<% /if -%>

↑こんなかんじのソースの固まりはありませんか。
その下にこんなかんじでソースを追加してみてください^^;↓

<!– ここから 毎月手動更新!!:自作ページャもどき –>
<% if:page_name eq 'index’ %>
<div style="margin-bottom: 30px;" class="navi">
<span class="p_10 b_green_btn">
      <a target="_self" style="color: #437a2f;" class="t_white" href="http://blog.kimihiko.jp/archives/200803-2.html">次のページへ</a>
      </span>
</div>
<% /if %>
<!– ここまで 毎月手動更新!!:自作ページャもどき –>

↑これはあくまで私の例で
無駄なものも入ってますが、重要な点だけ
いくつか解説しておきます。

if:page_name eq 'index’ ~ /if

↑これで囲むと、それはindexページ(トップページ)でのみ
出現するものとなります。

href="http://blog.kimihiko.jp/archives/200803-2.html">次のページへ</a>

↑慣れているヒトには説明するまでもないと思いますが。
このHREFのURLは、“過去ログビュー2008年3月の2ページ目”という
意味になります。

ここがタイトルで書いたように、“1ヶ月に一度の更新箇所”となります。

トップページの下まで来たら、そのまま“当月の2ページ目”に飛ばすのです。

そちらにジャンプしてもらうと、後は過去ログビューに入りますので、
ユーザはページャをたどってページ遷移できるようになります。

前述した下ごしらえが、ここで大きく関係してくるのですが、
トップページのデフォルト記事表示件数と過去ログビューの
表示件数を同じにしておくことで、自然な“擬似ページャ”を表現できるのです。

私の説明が下手なので、まだ意味が分からないかもしれませんね。

・トップと過去ログビューの表示件数を合わす事
・トップページ最下で当月の過去ログビュー2ページ目へリンクを貼ること。

このふたつは密接に関わっています。

1ページ目では“不自然”です。
なぜ2ページ目でないといけないのかも
次の説明で分かっていただけるかと思います。
勘のいい人はもうお分かりですね^^

仮に、単純に、トップページの一番下から
過去ログ1ページ目へ飛ばすとしましょうか。
デフォルト表示件数は10件と仮に考えましょう。

実際に想像してみます。
トップページ、、、上から下に最新の記事から古いものへ
閲覧してゆき、下に次のページ(つまり過去ログビューの1ページ目)へゆくリンクがあります。

そのリンクをクリックすると過去ログビューの
1ページ目です。。。
。。。
。。。。。あれ? また同じ記事が10件でるぞ?

そうなんです。
そういうことなんですね。

リンク先にて過去ログを1ページ目から表示させると
もう一度同じ記事がずらっと出てしまう。

これは非常に良くない。

だから2ページ目へリンク、なんです。
これで、ユーザは、違和感無く、
記事を過去へたどってゆくことができるはずです。

もういっちょ、 だ か ら、 なんです。
トップと過去ログビューの表示件数を同じにするのは。

同じにしないと、やはり、いくつかの
記事が重複して表示されるんですね。

説明が長くなりましたが、言いたかったのはこういうことで。

(もっとスマートな説明がしたのですが、、、^^; )

説明は以上です。
走り書きなので、ご指摘歓迎。

サンプルは今現在の私のブログのトップページへ
アクセスしてくださいませ。^^;

この技を使う場合は月一度の手動更新が発生することを
お忘れなきよう、、、

この記事は役に立ちましたか? 役立った 役立たなかった
0 人中 0 人がこの記事は役に立ったと言っています。

★新記事下ハイブリッドads