wp-shotタグの投稿

WordPressメール投稿ツールの比較
製作中のメール投稿プラグインのドキュメントでは既存のツールに対する違いを書いてあるのですが、5つものツールに言及したので、文章だけでは、機能の違いが分かりにくくなってしまいました。そこで表型式で機能のある/なしを作ってみました。プラグインに先駆けて比較表を公開してみましょう。
※この比較表は古いものです。最新版は Ktai Entry の説明を見てください。
新プラグイン | wp-mta | wp-shot | MobG1.0 | MobG 0.4 | wp-mb_mail | wpmobExpress | |
---|---|---|---|---|---|---|---|
許可アドレスの指定 (U: 登録ユーザー/F: 設定ファイル) |
U | U | U | U, F | U, F | U | F |
不許可アドレスからのメール | 残す/返送 | 返送 | 残す | 削除 | 削除 | 削除 | 残す |
メール送信後に投稿処理が不要 | ● ※1 | ● | ● ※1 | △ ※2 | − | − ※3 | ● ※4 |
APOP 対応 | ● | (対象外) | △ ※5 | ● | − | ● | ● |
SSL 対応 | − | (対象外) | − | ● | − | − | − |
管理パネルでの設定 (設定ファイル編集が不要) |
● | − | ● | − | − | − | − |
画像はメディアライブラリに登録 | ● | − | − | ● | ● | ● | − |
画像は uploads ディレクトリーに保存 | ● | − | − | ● | − | ● | − |
画像の回転 | ● | ● | − | − | − | − | − |
複数カテゴリーの指定 | ● | ● | − | ● | ● | − | ● |
キーワードタグの付与 | ● | − | − | ● | − | − | − |
出力テンプレートに対応 | − | − | − | ● | − | − | ● |
※2: サーバーで cron 設定が必要。
※3: 別配布の STDIN 版では対応。
※4: POP3 読み込み完了まで画面出力されないため、タイミングによってはサイト表示に数分以上かかる。
※5: ソースコードの微修正が必要。
こうやってみると、新プラグインと、MobG 1.0 ベータ版の機能アップが顕著ですね。どちらも要注目でしょう。
この比較表は、ツール附属のドキュメントおよびソースコードから作成したものですが、もし間違っていれば、ご指摘頂ければ幸いです。

メール投稿プラグイン制作ちう
先日制作開始したメール投稿プラグインですが、MTA からのプッシュ型 (wp-mta タイプ) では一通り動くようにはなりました。メールを POP で取りに行く方 (wp-shot スタイル) はまだテストしていません。
wp-mta はサムネール作成を自前で行なっていましたが、今回は完全に WordPress コアに任せることにしました。しかし、WordPress 2.0.x では、サムネールサイズが決め打ちで、フィルターによる変更も無理なため、WordPress コアのサムネール作成コードをコピペして取り込み、サイズ可変にしました。なお、画像の保存場所も wp-content/uploads/ ディレクトリーになります (wp-mta は独自の保存場所だった)。
で、問題は WordPress 2.5 でのメディア処理です。添付画像を XHTML として挿入するのは、新設の wp_get_attachment_link()
を使うことにしましたが、これが結構凶悪で、img 要素に alt 属性をつけないのです!! WordPress コアが wp_insert_post()
するときに alt 属性を補完してくれますが、それは空の内容になってしまいます。となると、Ktai Style による携帯電話表示では、画像が見えなくなってしまいます (画像の alt 属性が空だと画像を隠す仕様のため)。むりやり alt 属性を補完しないといけないようです……。
気になるのは、メディアライブラリーの「投稿に挿入」ボタンで作った画像 XHTML と、 wp_get_attachment_link()
をデフォルト引数で作った XHTML では微妙に内容が違うことです。前者だと、img 要素の class 属性に “wp-image-NNN” (NNN は画像の post ID) が付与されますが、wp_get_attachment_link()
を直接呼んだときにはつきません。メディアライブラリーは wp_get_attachment_link()
とは違う API を使っているのかも??
[追記] その通りで、wp-admin/includes/media.php では get_image_send_to_editor()
というのがあって、これは wp-includes/media.php の get_image_tag()
を呼んでいます。これは alt 属性対応で、”wp-image-NNN” も追加します。こっちを使った方がいいかな??

その他のハック予定
Ktai Style 以外のプラグインについても、WordPress 2.5 対応を含めた修正が必要ですね。
- JSeries Notifier
- 現状では、WordPress 2.5 で更新通知が英語メッセージになるという問題があるため、修正が必要です。自動アップデートに対応していないプラグインがありそうですが、「自動アップデートしますか」の文言も出してしまいましょうか。
- Lightweight Google Maps
- 固定ページで位置情報を付与した場合、地図ページでマーカーが出るようにする対応/同じ地点で複数のマーカーがある場合タブ付き吹き出しを使う対応/Lat_Long カスタムフィールドの数値修正に地図を使えるようにする対応 (現状、別途 Google Maps を出して緯度経度を測るしかない)、などを考えています。
- wp-mta
- wp-shot と統合させた新プラグインにする予定ですが、開発がまったく進んでいません。wp-shot はインストールと設定が少々ややこしいですが、新プラグインはかなり簡略化される予定です。メール取り込み用メールボックスとして Gmail を推奨予定ですが、この場合は携帯絵文字にも対応できそうですね。「メール投稿でも絵文字が使える」となると、かなりのアドバンテージになる??
- Ktai Location
- イー・モバイル H11T に対応して「バージョン 1.00」にするつもりでしたが、GPS 機能が貧弱で、メールで地図 URL を送ったり写真の EXIF に GPS 情報を埋め込んだりできないので、対応不可。現行バージョンのままでよさそう。
- KtaiLoc2Otenki
- 初期バージョン 0.7.0 が非常に安定しているようですが、実はアップグレードを検討しています。XML の解析方法を泥臭い方法 (wp-eznavi から引き継いだコード) にしていますが、wp-otenki では miniXML を使っているため、同じ方法を採用しようかと思っています。当プラグインは wp-otenki との連携が必須なため、wp-otenki に同梱されている miniXML を使えばいいし。
- Weather Journal
- WordPress 2.5 において、少し問題があるため修正が必要です。編集画面に挿入した天気フィールドの見た目が WP2.5 に適合したものではないこと、新しい日付の投稿を作ったとき、天気が「(設定なし)」にならず、晴れとかくもりとか適当な天気になってしまうこと、が問題です。
- その他
- Yuriko.Net の WordPress 2.5 化に際して開発したプラグインも、ドキュメントを整備して公開するか検討しています。パーマリンクを完全にカスタマイズするプラグインは、他のウェブログからの移行や、CMS としての利用に有用かもしれませんし。
[追記 2008-04-06] Weather Journal について言及してなかったので、追加しました。

WordPress 用メール投稿プラグイン制作開始
昨晩検討した wp-shot と wp-mta の統合ですが、新プラグインを作成する方向で進めることにしました。wp-shot を改良するにもしても、wp-mta をベースにするにしても、手を加える部分が多すぎるためです。考えている機能は以下の通りです。
- カテゴリーの指定機能 (wp-mta のコード流用)
- キーワードタグ指定 (新規開発)
- 添付写真を WordPress のアップロードディレクトリー管理とする (新規開発)
- 写真の回転機能 (wp-mta のコード流用)
- FOMA 903i 以降の、本文に写真を埋め込んだフォーマットへの対応 (新規開発)
- 設定画面の簡略化 (psedo-cron は廃止して、5分ごとの POP アクセスに決め打ち)
- wp-mail.php の機能は自動的に殺されるようにする (インストールがより簡単に)。
「添付写真を WordPress のアップロードディレクトリー管理とする」のは、後で管理画面から見たときに扱いやすくするためです。これは「WordPress のマルチバイト文字対応メール投稿(3)」では採用されている機能なので、追い付こうという魂胆もあります ただし、この場合は、写真の添付忘れや回転指示忘れを後から修正するのはちと面倒です。従来の、WordPress の管理外ディレクトリーを使う方式の方が融通は効きます。このため、どちらの方式を使うかは設定可能とします。
今月末ぐらいには発表できると思いますが、さてどうなることやら。
実は、Ktai Style に wp-mta の機能を取り込むことも検討していました。しかし、機能として共通になる部分がほとんどないために没としました。
wp-mta と wp-shot の機能を統合しようか
拙作の、自宅サーバー向けモブログ用スクリプト wp-mtaと、POP3 メール取り込み型モブログプラグイン wp-shot (Otsukare さん作) を統合しようかと考えています。
wp-mta は、dot-qmail ファイルで投稿スクリプトを起動させる仕組みなので、完全にリアルタイム投稿ができますが、メールボックスと WordPress があるサーバーが同一でないとうまく動かせません。まさに自分専用に作ったもので、わたしが欲しい機能をすべて盛り込んでいます (複数カテゴリーや画像の回転に対応)。wp-shot は、ウェブログが閲覧されたタイミングで POP3 で投稿専用メールボックスを読みにいく仕組みなので、万人向けです。しかし、機能が限定されています (カテゴリーは1つしか指定できない、画像の回転ができない)。
実は、キモとなる投稿作成の部分はほとんど同じ仕組みです (MIME デコードして、メールアドレスを確認して、wp_insert_post()
を呼ぶ)。そのため、両者を統合するのは、さほど難しいことではありません。本当ならば、Otsukare さんにがんばってもらいたいのですが、ドキュメントなど未整備のまま広く利用されているのが現状です。これではあまりよくないので、何とかしたくなってきました。
で、悩んでいるのが、統合したプラグインの名前です wp-mta は「dot-qmail/dot-forward から起動させる」ことを示唆する名称なので、POP3 型モブログプラグインにはふさわしくありません。Otsukare さんに許可を取って wp-shot の名前を使うのがよさそうですが、これも実は、ドコモの「i-shot」が元の名前なので、今さら感があります
(もはやドコモは i-shot なる商標を使っていない) それならば、まったく新しい名前をでっち上げてしまいましょうか。「Ktai なんちゃら」シリーズとして「Ktai Post」だと直截すぎるので、ちょっと検討してみます。
もう1つ悩むのは、PHP4 対応をするべきかどうかです。wp-mta, wp-shot ともに PHP4 に対応しているので、その後継プラグインならば対応した方がいいでしょう。でも、わたしの日常環境では PHP4 は撤廃していて、テストができません。スクリプト自体は PHP4 対応で書くとしても、「PHP4 でのテストはしてません」という状態でリリースしときましょうか。それだったら、PHP5 専用にした方が潔い気もしますが。