主な変更点
- Bloggerだけでなく、他の(Atomで投稿できる)ブログサービスにも対応。
- トラックバックを送信できるようにした。
- シンタックス・ハイライトでCSSを使うようにした。
UIの作成がなかなか進まないので、こんな機能を実装してみた。複数サービス対応をやるかどうかは、UIのプログラミングにも影響するので、もう、やるって決めようかな、と。これで、Blogger専用ではなくて、汎用のブログ投稿ツールを目指すという感じになったね。
今回対応したのは、
- TypePad
- livedoor Blog
- So-net blog
の三つ。一般的にブログの投稿APIは、Movable Type互換のXML-RPCか、AtomPPに大別できる。BloggerはAtom PPを使っているが、認証がGoogle固有のものなので、他のサービスには使えない。今回は、認証方式としてメジャーなWSSE認証を実装して、Atomで投稿できるサービスに対応した。
3つというのは、少ないんだけど、世界的にメジャーなMovable TypeとWordPressは、Atomに対応しているので、汎用性はないわけではない。ただ、この二つは自分でサーバー(もしくはレンタルサーバー)を持たないといけないので、テストできないんだよね。TypePadも本当は有料サービスで、試用期間中にテストしているんだけど、このまま続けるかどうか悩み中。自分のブログは無料のBloggerなのに、BloggerPostのテストのために有料サービスに入るというのは、本末転倒だよなあ。
ちゃんと調べてないんだけど、日本の無料サービスは、Web APIでの投稿を許してことが多い。はてなもそうだし、ココログなんて、中身はTypePadを使っているのに、Atomを送りつけると、「500 Internal Server Error」が返ってくる。おそらく、APIでの投稿を禁止しているんだと思う。まあ、日本じゃ、使っている人も、あんまりいないだろうしね。
他のブログサービスに対応したということで、トラックバック機能も実装してみた。しかし、これが思ったより苦戦。というのは、実装そのものではなくて、スパム除けのフィルタに引っ掛りまくって、なかなかテストができない。特に、トラックバックの送信元IPをチェックしているサービスでは、BloggerPostは使えないね。けど、基本的にブログエントリーの方のIPを調べる方が多いっぽいので、それほど深刻ではないと思う。
個人的に残念だったのは、どのサービスでもBloggerのエントリーからのトラックバックは受けつけないっぽいんだよね。まあ、Bloggerはトラックバック機能がないから、そこからトラックバックがあるのはおかしいんだけど。今、ブログ界ではトラックバックスパムが深刻で、各社、色々と対策している。それがキツくて、普通のトラックバックも弾かれることも多いらしい。本音を言わせてもらえば、トラックバックなんていらないよね。だから、Bloggerを選んだというのもあるし。ああいう密結合は、こういう結果になりやすいよね。
さらに言うと、(公開された形での)コメントもいらないと思うんだよね。はてブとか、2chのウォッチスレでもいいけど、ああいう風にブログから距離を置いた形の疎結合な感じの方がいいんじゃないかな。炎上とかもなくなるし。ブログ作者とコンタクト取りたかったら、メールなり非公開のやりとりをして、必要に応じて、公開するという方が賢いよね。まあ、賢いだけでは盛り上がらないのかもしれないけど。
シンタックス・ハイライトのCSS対応は、Vimの起動時に
-c ':let html_use_css = 1'
というオプションを入れるだけで出来た。でも、手動でCSSを設定しないといけない。このブログでは、
/* for syntax */
.Special { color: khaki; }
.Type { color: palegreen; }
.Comment { color: darkorange; }
.PreProc { color: cyan; }
.Identifier { color: lightskyblue; }
.Constant { color: lightsalmon; }
.Statement { color: greenyellow; }
pre.bpsyntax {
border: none;
color: #ffffff;
background-color: #224444;
}
という設定をしている。
あと、地味なところでは、ニコニコ動画対応を削除した。なんか色々トラブルを抱えているらしい。
0 件のコメント:
コメントを投稿