BlognPlus というブログシステムの機能拡張のモジュールです。Android から写真や記事投稿できるようにします。でもこれを作る過程でアプリの開発環境を構築して、ブログクライアントのデバッグもやったりしたので、いろいろ勉強になりました。
これをBlognPlusにインストールすると、Android から記事を投稿できるようになります。
たぶん、iPhone からも投稿できるはずです。iPad からできましたから。
どうやって Android から投稿するのかというと、もちろん XML-RPC API を通じてです。以前、BlognPlusにブログペットを配置できるようにするモジュールBlognPetを作りましたが、あれは実際、ブログペットで使う最低限のAPIを実装したものでした。これをAndorid にあるブログ投稿用のアプリで使えるようにAPIの数を増やしてみたわけです。今回は画面にパーツを配置する必要はないので、純粋にAPIを実装させただけのものになります。
BlognPlus 本体も、2.6.1あたりからXML-RPC API 対応になっています。これは外部ライブラリーを使わずに直接書かれているすごいものなんですが、iPad や Android にあるアプリからの利用はうまくいきませんでした。
そこで、以前作りかけていたコードを引っ張り出して作ってみました。BlognPlus 本体の方で対応できるまでのつなぎという感じです。これで、Android から BlognPlusへ 写真付きの投稿ができるようになります。
とりあえず、ここで公開しておきます。
ダウンロード
↓↓↓
blogapi_module_101.zip
追記:
wp.getPageStatusList、wp.getPostStatusList の解釈の間違いを修正。metaWeblog.deletePost の追加。
お約束ですが、自己責任でご利用ください。モジュールの性質上、記事データベースを操作しますので、必ず、記事のデータなどをバックアップしてから使ってください。
このアーカイブを展開し、xmlrpc.php を blognplus の index.php ファイルと同じフォルダに配置します。blogapiフォルダをまるごと、moduleフォルダ内に配置します。あとはブログクライアントで設定をすれば、使えるようになります。
■ 利用できる Android ブログクライアントの紹介
WordPress for Android
とても高機能な WordPress 用の公式ブログクライアントです。このモジュールはこのクライアントで利用できることを目標に作っています。記事の投稿、編集、カテゴリーの追加、写真の投稿、コメントへの返信などができます。また新着コメントの通知機能も利用できます。本来 WordPress 用のものですから、仕様が変われば今後も使い続けられるかどうかわかりませんが、今のところとても快適に使うことができます。
ただし以下の問題があります。
・BlognPlus には WordPress特有のページコンテンツがないので既存のページを見ることはできません。
・記事やコメントを全部削除してしまうと、最後に消したものがリストに残ってしまいます。新たな記事やコメントができると解決します。
・公開していない記事のプレビューを見ると文字化けします。
アカウント登録画面で各自がサーバーに配置したWordPress で利用するための設定を利用します。三番目のボタンです。(is03ではこのボタンが数ミリしか見えていないので、がんばって押します。)
BlogURL欄に配置した BlognPlus のURL、Username欄とPassword欄に、BlognPlusに登録してあるユーザー名とパスワードを入力します。そして保存ボタンを押せば登録完了です。
あとはいろいろ試してください。
WordPress for Android だけでなく、「PostBot」や、「Drupal Editor」といったシンプルなクライアントからでも利用できます。ただし「PostBot」には記事の再編集機能がありません。「Drupal Editor」に画像投稿機能がありません。また新規投稿でカテゴリーの指定ができないアプリの側の問題があります。「Drupal Power」は残念ながら、エラーが出て使えません。
iPhone や iPadからも使えるんですが、使えたアプリの紹介は次回にします。ただ 予め書いておきますが、WordPress for iOS は利用できません。
なお、このモジュールでは、BSDライセンスの XML-RPC for PHP を利用しています。
http://phpxmlrpc.sourceforge.net/
最後に、この記事に書きましたブログペットは今月15日にサービス終了するので、BlognPetモジュールをご利用の方はすみやかに削除してください。