[ インターネット ]
MovableTypeのサイドバーへRSS表示
MovableTypeのカスタムが楽しい。
今日は、他サイトからRSSフィードを読み込み、サイドバーに貼り付けることにチャレンジする。
幸いなことに情報は多く、文字化けにてこずったもののなんとかうまくいくことができた。
右サイドバーに表示されている、「blogmap - URLランキング Top 100」と「asahi.com」「WIRED NEWS」がそうだ。
まずは、mt-rssfeed.pl 、mt-list.pl、mt-jcode.pl、LP.pmの4つのファイルを手に入れる。
(※mt-rssfeed.plとmt-list.pl、LP.pmは配布終了しているようですので、こちらのサイトにアップロードしてあります。右クリックから保存してください)
テキストエディタでmt-rssfeed.plを開き、15行目
my $RSSFEED_DATA_DIR = "./db/";
をRSSフィードを保存するフォルダにしておく。フルパスのほうがいいかも。
また、286行目
return MT->VERSION<strong><</strong>'2.50'?_decode_xml_fallback($value):decode_xml($value);を
return MT->VERSION <strong>lt</strong> '2.50'?_decode_xml_fallback($value):decode_xml($value);に変更する。 (再アップロードしたmt-rssfeed.plは変更済み)
同様に、mt-jcode.plを開き、8行目
my $from = Jcode::getcode($str) || 'utf8';を
my $from = 'utf8';
に変更しよう。文字コードがUTF8じゃなければ必要ないかも。
修正が終わったら、mt-rssfeed.pl、mt-list.pl、mt-jcode.plの3つをMTのpluginsフォルダに放り込む。
また、mt-rssfeed.plとセットに入っていたLP.pmは「MT/extlib/XML/RSS/」にアップする。RSSフォルダはないので作成しておく。
あとは、メインに
<MTList name="feeds">
http://1470.net/bm/urlranking.html?mode=rss
http://www3.asahi.com/rss/index.rdf
http://hotwired.goo.ne.jp/news/index.rdf
</MTList><MTListLoop name="feeds">
<MTRSSFeed>
<h3><$MTRSSFeedTitle jcode="utf8"$></h3>
<ul><MTRSSFeedItems lastn="5">
<li><a href="<$MTRSSFeedItemLink jcode="utf8"$>"><$MTRSSFeedItemTitle jcode="utf8"$></a></li>
</MTRSSFeedItems></ul>
</MTRSSFeed>
</MTListLoop>
って感じで書けばOK!
参考サイトにさせていただいたサイトは、RSS feedをBlog上に表示するためのPlug-in様。
というか、ほとんどここのまんま。感謝感謝。
で、ここまでだとインデックスを再構築するときにしかRSSフィードの情報を取得しない。
つまり、通常の利用だとエントリーを作成したときにしか更新されないのだ。これは寂しい。
そこで、mt-rssfeed.plと一緒に入ってたmt-rebuild.plを使おう。
mt-rebuild.plは、MTをリビルドしてくれるPerlプログラムで、プラグインではない。MTをインストールしたフォルダに置いて、cronで定期的に実行してやればよい。
mt-rebuild.pl -mode="index" -blog_id=1 -template="mainpage"
こんな感じである。引数の説明すると -mode はリビルドする種類。indexならインデックスのみ。-blogはID、-templateはテンプレート名。
僕は毎時50分にインデックスをリビルドして最新の情報に更新するようにしてみた。
以上で作業は完了!
コメント (7)
mt-rssfeed.pl ?mt-list.pl?2点?既??布?終了??るよ??・・・アップ??頂?る?嬉??????。
よ?????願????。
投稿者: ??ゅ | 2005年9月27日 22:50
>??ゅ?ん
了解????。
直接ダウンロード???るよ??リンクを張り直????????。
投稿者: 湯一路 | 2005年9月28日 01:52
??????を???頂???り?????????。
投稿者: ??ゅ | 2005年9月28日 23:26
度々申?訳?り??ん。
LP.pmもアップ??頂?????ょ??。
投稿者: ??ゅ | 2005年9月28日 23:37
了解??。エントリ中?アップ????????。
投稿者: 湯一路 | 2005年9月29日 00:39
mt-jcode.plを?布?れ??るページ?DL???????解???も空???????・・・
アップロード??もら?????ょ???
投稿者: sha | 2005年10月31日 04:28
了解??。
http://www.yublog.com/cgi-bin/plugins/mt-jcode.pl
?らダウンロード???????。
投稿者: 湯一路 | 2005年10月31日 21:09