ここはMobAbleType(MT)なので、直接関係ないですが、最近はWordPress(wp)も多くなっています。
wpにはwp-mail.phpというメールから投稿できるプログラムが添付されていますが、日本語では使用できません。
どこかに無いかと探していて、見つけたのがSPaiSさんの「Wordpress のマルチバイト文字対応メール投稿(3)」でした。
携帯にも対応しているということで、早速ダウンロードしてみました。
圧縮ファイル「wp-mb_mail0.2.3.zip」を解凍すると次のファイルができます。
- wp-mb_mail.php
- pear/
pear/PEAR.php
pear/Net/
pear/Net/POP3.php
pear/Net/Socket.php
pear/Mail/mime.php
pear/Mail/mimeDecode.php
pear/Mail/mimePart.php
pera/Mail/xmail.dtd
pearでpear下のファイルをインストールしてある方は改めて、インストールする必要はありません。
utf-8が使えるエディタでwb-mb_mail.phpを開いて、pearディレクトリをアップする絶対パスを設定します。(下の下線の部分)
ini_set('include_path','/home/spais/spais.jp/public_html/pear/PEAR');
設定が済んだらファイルをアップします。
wb-mb_mail.phpのパーミッションは604とかでOKです。
次に画像をアップするディレクトリをwp-contentの下にuploadsの名前で作ります。
そしてパーミッションは777あるいは707で設定してください。
携帯でアップする場合は、administrator権限でログインし、管理画面のUsersで携帯のメルアドを持ったユーザを新たに作成します。また、携帯からのメールを受信するためにサーバ側で専用のメールアドレスを作成します。(例えば、hogehoge@example.com)
管理画面の「Options」の「writing」の下段「Post via e-mail」にその作ったメールアドレスのユーザを設定します。
ここに先の携帯のメールアドレスからメールを送りますので、このメールアドレスは公開しないほうが良いでしょう。
これで設定は終わりです。
あとは携帯からこのメールアドレスにメールを送ります。
メールを送ったあと、ブラウザでwb-mb_mail.phpにアクセスします。
例)example.comの/home/hogehoge/public_html/ディレクトリ直下にwp-mb_mail.phpをおいた場合は
http://www.example.com/hogehoge/wp-mb_mail.php
がアクセスURLになります。
そのたびにアクセスするのは面倒だという場合、wp-mb_mail.phpをcronで動作すると良いでしょう。
補足)
私の場合、画像添付の場合はWPにアップされたのですが、本文だけの場合はアップできませんでした。
調べてみると、100行目あたりの「subject]を取得する部分
$post_data['post_title'] = mb_convert_encoding($mail->headers['subject'], mb_internal_encoding(),$mail->parts[0]->ctype_parameters['charset']);
と120行目あたりの「Message body」
$post_data['post_content'] = mb_convert_encoding($mail->parts[0]->body, mb_internal_encoding(),$mail->parts[0]->ctype_parameters['charset']);
の、$mail->parts[0]の部分
これは配列に入れているのですが、bodyが本文だけのときは配列を使用しないようです。
したがって、本文だけか添付ファイルがあるか判断するため、「strtolower」関数を使用して、下記のように訂正しました。
「Subject」部分
|
if (strtolower($mail->ctype_primary) == "text"){ |
[Message body」部分
|
if (strtolower($mail->ctype_primary) == "text"){ |
いずれも、その場しのぎですので、不都合があるかもしれません。
SPaisさんのプログラムを元に、POP3でなく、stdinを使ったバージョンをコーティングしています。
標準入出力を使う利点は、cronを使わなくとも、すぐに携帯などのメール投稿を本文に反映させることができる点です。
殆ど、コーティングは済んでいると言うか、最初の入力部分を少し直し、パーミッションをsystem関数で修正するようにしただけ。(^_^;
一応、au携帯からのメール投稿はできています。
まだ、POP3系のコーティング部分が残っているので、もう少し検証します。