メールによる記事の投稿(モブログ) (ほぼ完了)
WordPressでは適切な環境設定を行う事によって、メール経由で記事の投稿が行えます。
1.準備
a)メールアカウントの準備
まず、記事の投稿先となるPOP3のメールアカウントを用意します。
既存のメールアカウントとの併用も可能ですが、確実な受信を行うためには、専用のアカウントを用意する事を
おすすめします。
以下では、wordpres@kowa.org というメールアドレスのアカウントを
po.kowa.orgというメールサーバにユーザID:wordpress パスワード:moblogという設定で準備したという前提で
解説を行います。
WordPressの設定メニューより[options]を選択して表示される画面の中から、[Blog-by-Email settings]を選択します。
Settings for blogging via emailというフォームが表示されて、幾つかの設定すべき項目が表示されます。
各項目には、以下の要領で値をセットします。
- mailserver_url
-
メールサーバーのホスト名を設定します。上記のメールアカウントであるならば、po.kowa.orgと入力します。
- mailserver_login
-
メールアカウントのユーザIDを設定します。上記のメールアカウントであるならば、wordpressと入力します。
- mailserver_pass
-
メールアカウントのパスワードを設定します。上記のメールアカウントであるならば、moblogと入力します。
- mailserver_port
-
メールサーバーのPOP3のポート番号を設定します。これは特別な場合を除いて110のままでOKです。。
- default_category
-
メールで投稿した記事をどういったカテゴリーに分類するかのデフォルト値です。
但し、ここで設定するのはカテゴリー名では無くてWordPress側で付与したカテゴリー番号となります。
カテゴリー番号が解らない場合は、カテゴリーの設定画面で指定したいカテゴリーの編集画面を開いた時の
URLを見て下さい。URL文字列中にcat_ID=1といった部分が見つかると思いますが、このcat_ID=の後の番号が
カテゴリー番号です。
- subjectprefix
-
メールの中からWordPressへの投稿記事である事を判別するために、メールのSubjectの先頭部分に付加する
文字列を設定します。
モブログ専用のメールアカウントであれば設定する必要が無いかもしれませんが、間違ってスパムメールが
混入した時などに、それらのメールをまず門前払いするためにも設定しておく事をおすすめします。
デフォルトでは、blog:と設定されています。
- bodyterminator
-
メールの本文中で、ここで指定した文字列以降は無視をして記事の中に含まなくなります。
自動的に署名や広告が挿入されたりするメール環境をお使いの場合には、ここで特定の文字列を設定し、
メールの本文の中で記事を終了させる箇所に、この文字列を入力するようにして下さい。
- emailtestonly
-
trueにするとモブログの動作確認テストを行うモードになります。
メールのチェックは通常どおり行われますが、実際にWordPressの記事としては書き込まれません。
- use_phoneemail
-
旧式の携帯電話のメールのように、改行文字を入力出来ない場合は、ここをtrueにして下さい。
現在の日本の携帯電話のメールではfalseのままにしておいて下さい。
特に写真投稿を行いたい場合、trueにすると写真を受けることが出来ません。
- phoneemail_separator
-
use_phoneemailをtrueにした場合、本文中のユーザーIDやパスワード部分と記事部分を分割するための
文字列を設定します。
デフォルトでは、:::と設定されています。
2.記事の投稿
設定が完了したら投稿する記事のメールを作成します。
今日ビックリした事!というタイトルの記事に
今日、朝起きて鏡を見たら髪の毛が真っ白になっていた。
・・・・
という記事を投稿したいとき、まずメールのヘッダー部分は、
To: wordpres@kowa.org
Subject: blog:今日ビックリした事!
というように指定します。
これから、メールの本文を書くわけですが、ココで大事なのはまず1行目に、
XOOPSのログインIDとパスワードを「:」で区切って書くという事です。
よって、XOOPSのIDがfooでパスワードがbarの場合に、メール本文は、
foo:bar
今日、朝起きて鏡を見たら髪の毛が真っ白になっていた。
・・・・
という風になります。
3.メールの受信
投稿したメールをWordPressに取り込むためには、wp-mail.phpを実行する必要があります。
wordpressモジュールのURLがhttp://www.xxx.com/modules/wordpress の場合に、
手動で受信を行うのであれば、ブラウザで、
http://www.xxx.com/modules/wordpress/wp-mail.php
をURLで指定します。
メールが正しく投稿されていてWordPressで正しく受信された場合には、
何も無い真っ白の画面が表示されるはずです。
自動で取り込むためにはLinuxならばCRONを使って、一定時間毎にwgetコマンドなどで上記のURLにアクセスする様な設定が必要となります。
コメント
- seijiさんが、「WordPressモジュールでモブログ」で、xreaサーバーでのCRON設定方法を書いていただいてます。 -- nobunobu
- こんにちは、ここ読みながらやって何とか取り込むことができるようになりましたが、最後の.phpをブラウザで実行すると取り込み動作の結果のようなのが表示されてしまいます。なぜなんでしょうか? -- 通りすがりさん
- このところ、wp-mail.phpの動作がメーラなどの環境によって不安定なため、初期設定では動作結果情報を表示するようにしております。
もし不用なら、wp-mail.phpの514行目あたりにある、
$output_debugging_info = 1;
ってのを
$output_debugging_info = 0;
に変更して下さい
-- nobunobu
- 便利に使わせていただいてます。ところで、default_category で設定した以外のカテゴリーに投稿することはできないのでしょうか?メールのsubjectの部分で指定するとかできると大変便利なのですが。 -- 通りすがりさん
- 半ば隠し機能なんですけど、メールの本文に、<category>3</category>という形式で、カテゴリーの番号を書いてもらえれば、カテゴリーの個別指定ができる様になっております。 -- nobunobu
- こんばんは, -- 通りすがりさん
- こんばんは、xoopsのメニューでwordpressをクリックしたときにwp-mail.phpを実行させる仕様にはできないでしょうか? -- 通りすがりさん
- Re:wp-mail.phpについて を参考にして、genさんの書かれているソースを
wordpress/themes/xxxx/index-template.php
に追加して頂ければアクセスの度では無くって最低10分の間隔をとってwp-mail.phpを呼び出してくれると思います。 -- nobunobu
- もし、うまくいかないときには、BBSの方にでも質問下さいね!
-- nobunobu
- メールでの投稿で日本語の題名が文字化けします。Subjectは、メーラによりMIMEエンコードされます。テストでは、Subjectが生のEUCコード、本文がJISなら問題なく投稿されます。これは仕様ですか? -- 通りすがりさん
- ↑文字化けの件ですが、BBSに同じ現象の質問があり、回答のとおりにphp.iniを修正することで直りました。失礼いたしました。 -- 通りすがりさん
- ご報告です。vodafone902SHユーザーですが、写真を添付するとユーザーログインの段階でログインできない様子です。ちなみに、ソースはまったく弄っておりません。 -- zen
- メール取り込みの件でおもしろい方法がありました。携帯電話でURLにアクセスして取り込みができますよ。あまり自動更新するのはサーバーに負担かけそうだから避けたい人は、携帯から更新すると便利かも!?vodafone3Gユーザーより -- zen
- メールサーバーがAPOPなのですが、取り込みがうまく行きません。やはりPOP3サーバにすべきなのですか?
-- ヒコ
スパム激増につきCOMMENT抑止中!