さてRSSといえば、ページの右側とかに、他のサイトのRSSをとりこんで表示してみたいものです。mt-rssfeedというプラグインがそれなので、さっそく導入。
例によって日本語化苦労バナシです。
まずは .tar.gz を持ってきて解凍。このアーカイブはディレクトリを作成しない行儀の悪いヤツなので注意。
mkdir -p $MT/extlib/XML/RSS cp LP.pm $MT/extlib/XML/RSS mkdir $MT/plugins cp mt-rssfeed.pl $MT/plugins
mt-rssfeed.pl の先頭にある
my $RSSFEED_DATA_DIR = "./db/";
をお好きなところに。自分は "./rssfeed/" としました。mkdir して chown g+w する。mt-list.pl もあると便利なので、同じとこから持ってきて plugins/ に放りこみます。
で、mt-rssfeed.pl の下のほうにある例を参考にテンプレートを編集します。次に XML::Parser の設定。
1) XML::Parser がない場合
CPAN から XML::Parser::Lite を持ってきてインストールします。MT ライブラリ一緒版には入っているそうです。
2) XML::Parser がある場合
euc-jp でXMLを配布しているサイトがあると
Couldn't open encmap euc-jp.enc:No such file or directory
とかでてきます。ので、$MT/extlib/XML/Parser/Encodings に euc-jp.enc を入れます。こちらからもってってください。# ちなみにこれは XML::Encodings モジュールに入っているXMLファイルを置換して作成しました。
さてこれで RSS のパースはうまくいきます。もしあなたのサイトがUTF-8なら、問題ないでしょう。EUC-JP の場合、例によって表示のとこで化けます。これを解決するのは、次のエントリで。
またrss のように、blog 自体は更新しなくても、定期的に更新したい人のためのツール mt-rebuild.pl というのが mt-rssfeed に入ってるので、cron とかで実行するとよいでしょう。
mt-list.plって何してくれるヤツ?
ドキュメント読んだけどよくわかりませんでした。
なんか、繰りかえしを楽にできるみたいな感じだったけど。複数の RSS を同じレイアウトで表示するときに、上でリストだけ定義すれば繰りかえしだせる、みたいな。
mt-rssfeed.pl の下のほうにある USING MT-RSSFEED WITH THE MT-LIST PLUGIN ってのをみてみて。
Posted by: miyagawa on November 29, 2002 07:08 PMなるぺそ〜。
組み合わせて使うと便利なのねー。
やってみるー。
なんかさ、
<MTListLoop name="feeds">
<MTRSSFeed file="<$MTListItem$">>
.
.
.
</MTListLoop>
ってやると、パースにミスって、"> が残ってしまうみたいね。
<MTListLoop name="feeds">
<MTRSSFeed file=<$MTListItem$>
.
.
.
</MTListLoop>
ってやらなきゃだ。
きもちわりー。
MTListLoop 内では、<MTRSSFeed> だけでいいみたい。file= 省略すれば、MTList で定義したやつをURLとしてひろってくれる。
Posted by: miyagawa on November 29, 2002 07:25 PMmt-rssfeed をトップページで使用すると、なんらかの書き込み (Comments, TrackBack) のたびにRSSを起動しちゃいますね。なんとかならないのかな。
Posted by: miyagawa on November 30, 2002 06:24 PMえと、上の「こちら」っていう euc-jp.enc へのリンクですが、URL が微妙に間違っているようで、クリックするとエラーになっちゃいます。
というわけで、ご報告でした。すでにお気づきならごめんなさい。
ではでは、これからもいろいろと参考にさせていただきます...。
こんにちは。
いつも大変参考にさせていただいております。実はmt-rssfeed、試してみているのですがどうもうまくいきません。mySQL使用で、$RSSFEED_DATA_DIRを適当なところに設定しています。mt-jcodeはまだ問題の切り分けのために入れていませんが、それが原因でしょうか。
現象としては、rebuild時に「wide character...」というエラーメッセージが出てしまいます。
少しヒントをいただければありがたいです。
Posted by: hiroshiy on March 22, 2003 05:16 PMはじめまして。
こちらのエントリを参考に、mt-rssfeedを自分のブログ(utf-8)のトップページにも入れてみたのですが、取り込んだRSS以外の、もともとあった日本語の部分が文字化けしてしまいます。取り込んだRSSの日本語は化けずに表示されます。
取り込むRSSのあるサイトもutf-8のサイトなのですが、原因がわかりません。
(原因がわからないので、今はプラグインを外してしまいました。)