クリボウの Blogger Tips

Google Blogger の使い方、カスタマイズ方法、各種ツールなど、
Blogger 関連の役立つ情報を紹介しています。

> 「最近の投稿」リストあれこれ

「最近の投稿」リストあれこれ

Posted at: 2006-03-23 8

読者の方からいただいたメールにおもしろい質問があったので、こちらでとりあげさせてもらいます。質問内容は、

「最近の記事」部分にのるタイトル数を増やしたいのですが、可能なものなのでしょうか?(10個が限界?)
というもの。

どうだったっけ?と調べてみると、たしかに <BloggerPreviousItems> を使った「最近の投稿」欄では、表示できるタイトルの数は 10件に固定されているようですね(参考:Blogger Help)。このタイトルリストに表示される内容は、記事単独ページではその記事以前の 10件、トップおよびアーカイブページでは一番最新の 10件となります。
クリボウの思いついた、タイトル数を増やす方法を並べてみると下のようになりました。

その1 <Blogger> を使う
テンプレートタグ <Blogger> を使う方法です。Blogger Help のこのページこのページで紹介されている方法を使えば、10件以上の投稿タイトルをリストに表示することも可能です。表示される投稿タイトル数は、そのページに表示される投稿内容の数と同じになります。つまり、トップページではブログに設定されている(管理画面「設定 > フォーマット > 表示」で設定可)投稿表示数の分、アーカイブページではそのページに載る記事分(設定にもよるが、たいていはその月に投稿された記事全て)、記事単独ページでは1件となります。記事単独ページではコンディショナルタグを使ってもともとの <BloggerPreviousItems> を表示させる工夫が必要です。以前書いたアーカイブページに投稿一覧リストをという記事に、その場合のコードを示しているのでご確認下さい。

その2 Feed2JS を使う
2番目は外部のツール Feed2JS を使う方法。Blogger ブログの Atom フィードからリストをつくることが出来ます。表示できるタイトル数は1件から Atom に記載されている投稿数までです。Atom に載る投稿数は、トップページに表示する投稿数の設定で決まります(管理画面「設定 > フォーマット > 表示」で設定可)。問題は、つねに最新の投稿情報しか表示できない点。もちろん、JavaScript を用いてリンクリストを表示するので、通常の <BloggerPreviousItems> を noscript 要素にして、スクリプト無効の際にもリストが表示できるようにする必要があると思います。

その3 「ヌルッと出るリスト」を使う
3つ目は、以前に紹介した要約がヌルッと出てくる「最近の投稿」リストを使う方法。これも最新の情報しか表示できないんですが、他の方法と違うのは、Blogger のデータを使っていない点。Google Blog Search のデータからリストをつくるので、トップページに表示する投稿数にとらわれずに、1件から 100件まで、表示するタイトル数を設定することができます。これも JavaScript で表示させるので、<BloggerPreviousItems><noscript> で用意しておく必要がありますね。

その4 1と3を組み合わせる
好みや必要に応じて上記の方法から選択してもらえばいいんですが、クリボウの一番のお勧めはというと、1の方法を基本にトップページにだけ3を適用する方法。つまりタイトルは、トップページでは好きな分だけ、アーカイブページではその月の全投稿分、記事単独ページではその記事以前の 10件が表示されるというわけ。導入手順をあらめて書くと次のようになります。

(1) Blogger 管理画面「テンプレート」から、テンプレート head 要素内(<head></head> の間)に、次のコードを貼り付ける。
<link rel="stylesheet" href="http://tools.kuribo.info/expandablelist/default.css" type="text/css" />
(2) リンクリストを書き出したいところに、次のコードを貼り付ける。
<div class="sidebar-title"><MainPage>最近の記事</MainPage> <ArchivePage>この月の記事一覧</ArchivePage><ItemPage>以前の記事</ItemPage></div>
<MainPage>
  <script type="text/javascript" src="http://tools.kuribo.info/expandablelist/?url=<$BlogURL$>&start=1&num=15" charset="UTF-8"></script>
  <noscript>
    <ul id="recently">
      <BloggerPreviousItems>
        <li><a href="<$BlogItemPermalinkURL$>"><$BlogPreviousItemTitle$></a></li>
      </BloggerPreviousItems>
    </ul>
  </noscript>
</MainPage>
<ArchivePage>
  <ul>
    <Blogger>
      <BlogItemTitle>
        <li><a href="<$BlogItemPermalinkURL$>"><$BlogItemTitle$></a></li>
      </BlogItemTitle>
    </Blogger>
  </ul>
</ArchivePage>
<ItemPage>
  <ul>
    <BloggerPreviousItems>
      <li><a href="<$BlogItemPermalinkURL$>"><$BlogPreviousItemTitle$></a></li>
    </BloggerPreviousItems>
  </ul>
</ItemPage>
赤字部分は、トップページで表示するタイトル数を記入してください。

回答おしまい。こうやって並べてみると、色々な方法があるもんですね。質問者以外の方もご自分のブログのタイトルリストの参考にしてもらえると嬉しいです。


スポンサードリンク:
お願い:
「この記事役に立った!」と思ったら、ぜひフィード登録をお願いします。 

Comments:8

  1. あ、ちがった所にコメントしておりました…そちらを削除してふたたびこちらにコメントです。ありがとうございます助かります!ますますブロガー好きになってます、さてソースを研究するぞ〜!

    (クリボウさんの本とかあったらいいなぁ(^^;))

    ReplyDelete
  2. はい、コード、研究してみてくださーい。

    クリボウの本は現在も、また将来もありませんです。
    けれどこのブログだけだと、関連情報があっちにあったり、こっちにあったりと、突然訪れた人なんかは読みにくいだろうな、とは思います。
    なので、まとめサイトのようなものを作ろうかな、などと思案中。

    どうでしょうかね。

    ReplyDelete
  3. 賛成!です(でも本は無しかぁ…ありそうでないんですよね…。クリボウさん(知識豊富な皆さんも!!)のナレッジをロングテールにのせれはきっと…なんてどこぞのリファレンス得意な出版社さんの目に留まらないかな…なんって^^;)

    私のような検索不得手、プログラム知識がジュラ紀な人間にはさらなる武器となることでしょう!今後もいろいろ楽しみにしております!

    とこのコメント内でまた質問なのですが、よろしいでしょうか。
    実はカテゴリー(クリボウさま記事)をつけさせていただいているのですが、たまにカテゴリに反映されない時があります。どうやらGoogle Blog Searchにも反映されていないようです。ほかのちゃんと反映される記事と違ったことはしていないはずなのになぜか…。早いときは5分もたたない内に反映されるのですが、遅い(!?反映されない?)時はいつまでも反映されません。うむむなぜか…泣きついてばかりでごめんなさい。

    ReplyDelete
  4. 一番遅い記事が、4日たって反映されました…タイムラグだったのでしょうか…。

    お騒がせしました…。

    ReplyDelete

Comments on Google+:

© 2005-2014 Kuribo. Powered by Blogger.