はてなBookmarkに登録

[Plagger] blogへ自動投稿 補足編

PlaggerのPublish::MTを使ってMovableType以外のブログに投稿する件ですが、その後試してみて分かったことについて纏めてみました。

teeter totterへ投稿してみる
前回試した時は上手くいかなかったのですが、今回再チャレンジした所すんなりと動作しました。変えたところは、実績のあるrsd.xmlを手直しして使った点くらいです。前回使ったrsd.xmlと今回のrsd.xmlの差分をチェックして原因を調べたいところですが、前回使ったrsd.xmlを削除してしまったため、原因調査できません…。なお、teeter totterに投稿した場合ですが、gooブログ同様に「下書き」になってしまいます。

「草稿/下書き」とならないようにする
Wiresharkでパケットキャプチャしてみたところ、Publish::MTでブログに投稿する場合は
 1)metaWeblog.newPostで投稿($publish未指定のため下書き扱いとなる)
 2)mt.publishPostで下書きから公開へ
という流れで動いていることがわかりました。(「その前にソース嫁!」と言われそうですが)

それぞれのAPIは、Movable Type で使える XML-RPC APIを参考にさせて頂きました。

gooやteeter totterで、草稿/下書きのままとなってしまうのは、mt.publishPostに対応できていないためなのでしょうか…。ということで、metaWeblog.newPostを投げる時に、$publishを1にするようにMT.pmを書き換えてみたところ、ちゃんと公開扱いになりました。
sub post_to_mt {
(省略)

my $id = $mt->newPost({
title => $self->conf->{title} || $args{title} || '',
description => $args{body} || '',
},1) or die $mt->errstr; ←ここの"1"を追加

(省略)
もうちょっと「まとも」にMT.pmに手を入れれば、config.yamlの中で公開/下書きを指定できるようにすることも可能でしょう。
投稿者 Izumi : 22:27 | PC / Net

トラックバック

このエントリーのトラックバックURL:
http://www.simazaki.com/~izumi/cgi-bin/tt-cgi/tt_tb.cgi/484

コメント

偶然、貴サイトにたどり着きました。plaggerの件なのですが、記事投稿はどのような時に使うのですか?
ご享受ください。

投稿者 xp : 2007年7月7日 03:23

コメントしてください




保存しますか? はいいいえ


 
< 2007年7月 >
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
サイト内検索
Recent Comments
Recent Trackback
リンクリスト