サイドバーに特定のカテゴリのエントリタイトルを表示させる方法

結論から言うと、サイドバーに特定のカテゴリのエントリタイトルを表示させることはできます。


コメントで書けばいいのですが、ちょっと説明が長くなってしまうので、トラックバックで。


特定のカテゴリの表示には、RSSモジュールを利用することで表示できます。
はてなダイアリーRSS
http://d.hatena.ne.jp/ユーザーID/rss
となっているのは、ご存知かと思いますが、検索結果についても RSS を配信しています。


例えば私のダイアリーのカテゴリ「映画」のページでは
http://d.hatena.ne.jp/rikuo/searchdiary?word=%2a%5b%b1%c7%b2%e8%5d
こうした url になります。


この url の末尾に「&mode=rss」と付けることで、その検索結果の RSS を取得できます。
http://d.hatena.ne.jp/rikuo/searchdiary?word=%2a%5b%b1%c7%b2%e8%5d&mode=rss
あとはこれを、RSSモジュールを使ってサイドバーに設置すれば、カテゴリ「映画」のエントリタイトルを表示することができます。


右側のメニューに表示している「サイドバー01」がそれです。それの上が secitonモジュール なので、違いが分かるかと思います。私はあんまり映画に関して書くことが少ないので、最新の話題が随分前のものになってしまいますが。


設定は

<hatena name="rss" url="http://d.hatena.ne.jp/rikuo/searchdiary?word=%2a%5b%b1%c7%b2%e8%5d&mode=rss" listlimit="6" titlelength="20" moduletitle="サイドバー 01" template="hatena-module">

としました、各種の設定やIDなどは適宜 変更してください。

複数のカテゴリを表示させる場合

ただ、複数のカテゴリを表示させる場合には、この方法ではできないので*1、新規にグループを作るなどして、それぞれのカテゴリの RSS を一旦 はてなRSS などに登録、その結果を RSSモジュールで設置するという方法で対応できるかと思います。

特定のキーワードを含むエントリを表示

またこれは、特定のカテゴリのみ、という上記条件にはあてはまりませんが、MixFeed など、RSS を編集できるサービスを併用することで、似たようなこともできます。
例えば MixFeed なら、特定のキーワードを含むエントリだけ、または特定のキーワードを含まないエントリだけを表示するなども可能です。また、複数の RSS をまとめて一つにできるのもメリットの一つですね。


私は グループ日記わんわんワールドについて書いているのですが、このダイアリーとグループ日記で「わんわんワールド」を含むエントリだけを抽出する、ということも可能です。


例:http://mixfeed.jp/1978


ただし、こちらのサービスでは厳密に特定のカテゴリだけを検索させるのは難しいため*2、今回の用途には使えません*3






というわけで、現状でもこれらの方法で対処可能です。


ただ、アイデアの論旨として RSS などを使わず、ダイアリーだけの独自の機能……特定のカテゴリのエントリタイトルだけを表示させる新しいモジュールの提案……というのであれば、それもいいかと思います。
正直なところ、こちらの方法はややこしいので、簡単なモジュールで用意されていれば便利ですね。




尚、サイドバーに表示しているRSSモジュールは検証用に一時的に設置しているので、近日中に外します。

><

*1:複数カテゴリを検索する方法が分かりませんでした

*2:本文中に[映画]という文字列がある場合でもヒットしてしまうので

*3:それとそのままでは CDATAタグまで表示されてしまう、なぜtitleまでやるかなぁ。