2007年11月18日の投稿

WordPress 向け携帯電話閲覧・管理プラグイン Ktai Style 0.94 リリース
16日リリースした WordPress 向け携帯電話閲覧・管理プラグイン Ktai Style ですが、バグがいくつか見つかったので、それを修正したバージョン 0.94 をリリースします。バグフィックスだけはナンですので、カテゴリー変更機能も付けてあります。
- 各種スマートフォン、PSP, NDS のページ容量を 50KB に拡大しました。
- 新規投稿時、投稿編集時にカテゴリーを変更できるようにしました。
- デフォルトカテゴリー、メール投稿時カテゴリーの設定をできるようにしました。
- ログイン直後、画面が真っ白または PHP のエラーが表示されることがある問題を修正しました。
- 投稿編集のカテゴリー表示で、親カテゴリーを持つカテゴリー (第2階層以下のカテゴリー) が表示されない問題を修正しました。
バージョン 0.93 はリリース直後にファイル差し替えを何回もやってしまったのですが、今回は慎重にチェックしています。実は、0.93 リリース前にメインマシンを修理に出していたので、リリース作業は予備マシンで行ったのでした。このため作業にミスが出てしまいました。予備マシンは Leopard を入れてしまったので、使い勝手が違うんですよね〜〜。今回はメインマシン (こちらはまだ Tiger) の作業なのでスムーズに進んでいます。
とりあえずは、必要最小限の機能がついていると思います。ただし、カテゴリー変更機能は携帯電話の容量制限にひっかかった場合に使えませんので、これを回避する方法を考えないといけません。
今後は TODO リストに書いてある内容を実装してみますが、それ以外にも、タグ対応など要望があるようなので、いろいろ検討してみます。
モバイル対応プラグイン WP MOBILE ダメすぎ
いきなり脆弱性が見つかった DIGITAL STUDIO 製モバイル対応プラグイン WP MOBILE ですが (リリース案内)、11月15日に修正版が出ていました。改版履歴は「バグ修正」となっていて、セキュリティホールがあったことが隠されているのは不審です。
ともあれ、ダウンロードしてソースを読んでみますが、ダウンロードファイルには Readme がついていません!! インストール説明はウェブを見ないといけないのですが、この説明が分かりにくいんですよね……。どうやら2つのプラグインから構成されているようです。2つに分けるのはそれなりに意味があるのでしょう (Ktai Style でも、ウェブログ管理プラグインを別にしようかと検討したことはあったので)。
でも、ソースを読んでいると頭が痛くなってきました。ツッコミどころ満載だからです。
- せっかくローカライズ関数
__(), _e()
を使っているのに、その引数に日本語文字列を書いてある。 echo _e()
なんてコードもある:-) (_e() == echo __()
なので無意味なコードとなる)$action = $_POST['mode'];
switch($action) {
case "挿入":
というのは、マトモに動くコードとは思えない (しかも日本語は EUC-JP コード)
こんなスパゲッティコードで脆弱性を見つけたというのは、発見者に脱帽です。わたしは根気がないので、解読する気にもなりません。PHP が分かる方はぜひ WP MOBILE のソースを見てみてください。プラグインを使う気が失せること確実です 開発元には、プロ根性を発揮してもらって、よりよいコードにしてもらいたいものですが、期待できないかも……。
[追記] そうそう、携帯電話で閲覧したとき、いくつか GIF 画像のアイコンを使うようですが、これが500〜1000バイトぐらいあるので、端末によっては容量制限にひっかかる可能性があります。また、パケット料金の浪費にも繋がります (閲覧者のサイフにやさしくない)。割引サービスの有無によりますが、1KB==1円なので、けっこうな額になるんですよね。
[さらに追記] さらに調査すると、プラグインを有効化するときの PC 用ブラウザーは Firefox, Internet Explorer, Opera しか使えません。それ以外のブラウザーではエラーになります (しかもエラーが文字化け)。そう、Safari ではダメなのです。なぜ、PC 側ブラウザーに制約を設けるのか不明ですが、Mac ユーザー無視というだけで叩くのに十分でしょう
もっと驚愕の事実が分かりました。なんと WordPress 2.3 には対応してないようです!! 今どき WordPress 2.3 の動作確認してないって……。
[またまた追記] いや、もっとすごい事実が判明しました。WP MOBILE を入れると、ウェブログの表示自体が Safari 非対応になります!! (プラグインの有効化ができないだけではない) デモサイトがあるのですが (携帯電話表示は http://www.celeb-walker.net/?action=preview で確認可能)、どちらの URL に Safari でアクセスしても「ユーザagentがサーバーに書いてないですのでアクセスができないです」というエラーのみが表示されます (メッセージも日本語になってない……)。PC 向けブラウザーチェックは単なる閲覧にも作用するようで、結果として「Firefox, MSIE, Opera 以外お断りサイト」を作るプラグインとなっているわけです;-)
こんな設計では「作者にはがんばってもらって、よいプラグインを作ってもらいたい」というレベルを越えています。今すぐ開発中止してもらいたいものです。
(注) 盛大に叩いていますが、プロが作っているものだからです (実力的にはプロと思えませんが)。個人が趣味で作ったものなら暖かく見守りますよ。
[追記: 2009-02-11] 1月中には、当該プラグインのダウンロードリンク先が Not Found になっていました。Press9 での提供は続いていますが、一般配布は終了してしまったようです。腰抜けですね オープンソースの理念とは、広く公開することでよりよいソフトを作ろうとするものですから、わたしが盛大に叩いた箇所をすべて直せば、すごいものができた *かも* しれないのに……。
今後の開発計画
今後のプラグイン開発計画を書いておきます。Ktai Style はだいたいの機能実装が終わったので、当面はバグ修正やセキュリティー対応のみとし、大きな機能追加は先送りとします。近日中に Force Wave Dash のリリースを予定しています。波ダッシュへの矯正対象をコメントタイトル・コメント本文にも拡大し、ソースの書き方も工夫したものです。バージョン番号は 0.80 を予定していますが、1.00 としてもいいかもしれません。
wp-mta も、バージョン 0.32 (未公開) ができてますが、3か月以上使ってて安定しているので、そのまま公開予定です。
そして、放置気味になっている Lightweight Google Maps の修正も検討しています。同一地点に複数の位置情報がある場合、現状では、マーカーが重なってしまって一番上のものしか使えないのですが、タブを使って1つのウィンドウに複数情報を表示させることを検討しています。また、マーカーを打った順番が分かりにくいので、マーカーの色をアニメーションさせて順番を示すようなことも考えています。
あとは、カレンダーの下にスケジュールを出すプラグイン (非公開プラグイン) の修正もあります。休日に色を付ける機能がバグっている (11月23日の色が付いてない) ので、ヒマをみて修正してみます。WordPress からスケジュールを入れるインターフェースを作って一般公開するかもしれません。