二〇〇三年 九月 十九日(

旧暦 八月二十三日 赤口
癸未年 八月廿三日

MTプラグインに挑戦

先日来、mt-rssfeed.pl によるコンテンツの取得成功、文字化け克服に感動してしまい、こうなったら自前でプラグイン製作じゃ〜!と勢いだけで作ってしまった初のプラグイン。その名も「mt-hatenafeed.pl」。
更新チェックサービスのはてなアンテナのコンテンツを取得してしまおうというもの。
とりあえず、はてなアンテナ取得CGIというのは経験があったので、それのソースをコンバートしてやってみた。
いってみれば、アンテナのアンテナなわけで、あんまり意味無いような気もするんだけど、ほかに良いアイディアも浮かばなかったし・・・。
とりあえず何か作ってしまうことに意味があったのであって、ちゃんと動いているようなので、ワタシ的にはOKだ。

一応、ソースを置いておく。mt-hatenafeed.pl 【これよりも新しいバージョン→】
それから、全然整形してない、乱暴なサンプル
まだまだ、作り始めたばっかりで、プラグインの流儀もほとんど分かっていない人間が作ったもので、どんな不具合があるかも分からないアルファ版であることは明記しておく。
とくに、登録アイテムが何百もあるような重いページでどういう挙動を起こすか分からないので、その辺は厳重に注意してもらいたい。ページの全てのデータを一旦は取得してから処理しているので、取得数が少なければよいというものでもない。
また、ソースを見ていただけばお分かりの通り、エラー処理もまともに出来ていないので、パラメータがおかしくなったときとかにどんな挙動を示すのかよくわからない。
と、まあ、ないない尽くしの注意書きだらけではある。

テンプレートへのタグのサンプルはこんな感じ。


<MTHatenaFeed user="mura">
<a href="<$MTHatenaFeedUrl$>"><$MTHatenaFeedTitle$></a><br />
<MTHatenaFeedItems num="5">
<$MTHatenaFeedItemTime$> <a href="<$MTHatenaFeedItemLink$>"><$MTHatenaFeedItemTitle$></a><br />
</MTHatenaFeedItems>
</MTHatenaFeed>

user= でユーザ名を、num=で新しいほうからの表示数を入れる。
また、はてなアンテナからの情報を転用するにあたって、ネタ元がはてなアンテナであることを明記する必要があるので、<$MTHatenaFeedTitle$>のタグは必ず表示するようにしてもらいたい。

必要なモジュールは、LWP::UserAgent 。
それからはてなアンテナのページは文字コードがEUCなので、ワタシのページではとくに変換処理を行っていないが、utf-8やShft_JISなページでは文字化けしてしまうかもしれない。

もし、お使いになられた方、あるいは何かの拍子にこの記事を見られたMTプラグインの先達の方、叱咤激励御指導御鞭撻のほど、よろしくお願いいたしますです。

Posted by mura at 2003年9月19日 21:39 | トラックバック
コメント
コメントする









名前、アドレスを登録しますか?






トラックバック
このエントリのトラックバックURL

http://www.villagewood.net/mt/mt-tb.cgi/12

◇このサイトのサーバの調子によって、トラックバックを送信してもエラーが表示されたり、すぐにこのページに反映できないときがあります。ですが、トラックバック自体は送られていますので、重ねて送っていただかなくても大丈夫です。こちらでも出来るだけ早く反映できるようにrebuildしますので、ご容赦ください。
参照元URL
関連エントリ