WordPress標準機能を利用してメール投稿する方法と設定
2014/11/22
wordpressを利用していて一番利用されているプラグインが、
このwordpress.comが提供しているJetPackではないでしょうか。
JetPackプラグインは機能が多いのですがその中に「メール投稿」の機能があります。
しかし、wordpressの標準機能でもメール投稿の機能を利用することができます。
ここではレンタルサーバなどの自前メールアドレスによる投稿をご紹介します。
はじめに
専用のメールアドレスを利用して、メール投稿を行う。
昔から、mixi™やGREE™などのサービスで利用されていた、
投稿専用のメールアドレスを発行し、投稿を行う方法です。
wordpress標準機能でもメール投稿可能
こうした方法ではシステムが無作為に発生させたメールアドレスを利用して、
自分のアカウントに対して連携される仕組みですが、
wordpressでも同じような仕組みを利用することができます。
JetPackを利用した方法も便利
より便利にメール投稿を行いたい場合には、JetPackプラグインを利用すると
メールアドレスをwordpress.comから取得し、
様々なオプションを利用してメール投稿が行えるようになります。
07.メール投稿-Jetpack by WordPress.com
ただ、JetPackを利用しない場合でも
wordpress標準の機能を利用してメール投稿を行うことができます。
本投稿ではその方法のご紹介です。
※正直情報が少なく、この辺はみなさんプラグインを利用されている印象でした。
注意事項
標準機能による注意事項は以下の通りです。
投稿メールデータの保持
標準のメール投稿機能を利用する場合、
原則(ソース改変なしに)メールボックスの受信メールは削除されます。
その為、投稿データの保持という面で考えた場合、送信済みメールを保持する運用になります。
HTML形式を利用しない
送信するメールはプレーンテキストモードを利用します。
標準的なHTMLタグは利用できますので、
感覚的にはビジュアルエディタを利用するという感じよりテキストエディタを利用して投稿をする印象です。
投稿者は送信メールアドレスに依存
メール投稿に利用する受信アドレスはダッシュボードの
[投稿設定]に指定した専用メールアドレスを全てのユーザーで利用します。
宛先に対して送信を行うメールアドレスは、
wordpressの各ユーザーに割り当てられたメールアドレスに
一致するユーザーが登録されている場合には、
そのメールアドレスのユーザーが投稿したものとして投稿されます。
その為、wordpressのユーザーロールを「投稿者」等で設定してある場合には、
メールによる投稿が「レビュー待ち」状態として投稿され即時公開されません。
メールアドレスに紐づいたユーザーのユーザーロールが、
「管理者」である場合には投稿は即時公開されます。
ユーザーの種類と権限については以下参照
ユーザーの種類と権限 – WordPress Codex 日本語版
専用メールアドレスの準備
通常、wordpressを利用している以上、大抵はレンタルサーバの契約を行っているでしょう。
またメールアドレスも自由に作成ができたりと、自由度はあるはずです。
こうしたレンタルサーバで作成したメールアドレスで、
Jetpack by WordPress.comプラグインの「メール投稿」を行ってみます。
メールアドレスの作成に関しては、各社によってまちまちだと思います。
お名前.comの共有サーバであれば、以下でご紹介しています。
お名前.comレンタルサーバで追加メールアドレスを設定する
設定方法
wordpressのメール投稿機能はサイドバーの[投稿設定]で行います。
この設定部分に対してメールサーバーのPOPアカウントを指定します。
- メールサーバー/ポート: POPサーバーのサーバー名とポートを指定
- ログイン名: メールサーバログインユーザー名
- パスワード: メールサーバログインパスワード
- メール投稿用カテゴリーの初期設定: メールの投稿を行う際のカテゴリ指定
設定を行ったら[変更を保存]をクリックして設定を反映します。
ユーザー登録
メール投稿ではメールアドレスとユーザー名が紐づけされています。
各権限でユーザーの登録を行います。
ここでは以下のようにユーザー登録を行っています。
管理者:dev1
編集者:dev2
投稿者:dev3
寄稿者:dev4
購読者:dev5
各ユーザーの権限グループと行える権限については以下を参照願います。
ユーザーの種類と権限 – WordPress Codex 日本語版
メール送信
各ユーザーのメールアドレスからメール投稿を行うメールユーザー(メールアドレス)へ
メールを送信し、投稿を行います。
投稿を行う際のメールは、HTMLモードでは正しく投稿が行われません。
その為、テキストモード(シンプルテキスト)で送信します。
テキストモードでは一般的なタグは利用できます。
その為、ビジュアルエディタで投稿ではなくシンプルエディタで投稿を行うようなイメージです。
受信ボックスを確認すると、メールが届いています。
自動投稿の準備
wordpressは常駐監視の仕組みが存在していません。
擬似的に常駐監視に近い状態を実現するために、メール投稿のトリガー(引金・きっかけ)として、
以下のURLにアクセスすることによって、メール投稿を手動で実行することができます。
※URLは各自の環境に合わせて読み替えてください。
http://example.com/installdir/wp-mail.php
POPサーバーにアクセスしメール投稿を取得する処理は、
デフォルトで15分に一回しか実行されないようになっています。
その為、以下の手順を15分未満で複数回実行してもメールのチェックが行われず、投稿も行われません。
手動実行
実際に上記のURLにアクセスをすると以下のように文字化けすることがありますが、
ブラウザのエンコードをUTF-8へ変更することで正しく表示することができます。
エンコードをUTF-8へ変更後、処理内容が可読できます。
※メール投稿が実行されると、受信したメールは削除されます。
もしこのページを15分以内に再度表示した場合には、以下のように表示されます。
おっと、もう少しごゆっくり!そんなに何度も新しいメールをチェックしなくても大丈夫です。
投稿の確認
投稿を確認すると、各ユーザーの権限で投稿が行われています。
投稿を行った際のステータスは以下のようになります。
- 管理者(dev1)-公開済
- 編集者(dev2)-公開済
- 投稿者(dev3)-公開済
- 寄稿者(dev4)-レビュー待ち
- 購読者(dev5)-レビュー待ち
投稿は以下のようになります。
メール投稿時点
レビュー待ちを管理者が公開
擬似的な自動実行
またfunctions.phpに以下のソースを追記し、
footer.phpなどの処理でretrieve_post_via_mail()関数を実行するように設定することで、
ブログの表示の度にメールチェックを行うように実装が可能なようですが、
※当方の環境では、以下のソースを設定しましたが、メール投稿を実現することができませんでした。
Customizing How WordPress Checks for New Mail
12345678910 add_action( 'shutdown', 'retrieve_post_via_mail' );function retrieve_post_via_mail() {flush(); // Display the page before the mail fetching beginsif ( get_transient( 'retrieve_post_via_mail' ) ) {return; // The mail has been checked recently; don't check again} else { // The mail has not been checked in more than 15 minutesdo_action( 'wp-mail.php' );set_transient( 'retrieve_post_via_mail', 1, 15 * MINUTE_IN_SECONDS ); // check again in 15 minutes.}}
この方法にてメール投稿の擬似的な自動化は行えるはずですが、
古いwordpressバージョンの日本語環境ではメール投稿が動作しないといったような症状があったようで、
現時点でこのfunctions.phpによる実装が可能かどうかは不明です。
現実的な運用として、JetPackによるメール投稿を利用される方が無難かと思います。
さいごに
正直、日本語環境でこのメール投稿を利用している人は少ないのかなといった印象です。
確かに、こうして深追いするほどの機能でもありませんし、
決してメール投稿機能が便利だとは思っていません。
ただ、こういう機能が利用できると点を押さえておけば、
自分の引き出しの一つにはなるかなといった印象です。
参考
Post to your blog using email « WordPress Codex
WordPress™はWordPress Foundation の登録商標(第5049965号)です。
WordPressロゴ、アイコンその他のマーク等はWordPress Foundation の商標であり、
WordPress Foundation の著作物です。
WordPress.comはWordPress Foundation が管理運営を行うドメインならびにサービスの名称です。
WordPress.com、WordPress.net、WordPress.org、WordPress.tv、
WordPressFoundation.orgはWordPress Foundationが
管理運営を行なう正式なトップレベルドメインであるとともに、
WordPress Foundationが運営を行うサービスの名称です。
ミクシィ、およびミクシィロゴは、株式会社ミクシィ mixi, Inc.の登録商標です。
登録番号は以下の通りです。
第4831197号、第4988496号、第4993774号
mixi、およびmixiロゴは、株式会社ミクシィ mixi, Inc.の登録商標です。
登録番号は以下の通りです。
第4831197号、第4988496号、第4993774号、第4831196号、
第4988495号、第4993774号、第4997635号、第5080984号、
第5090675号、第5090676号、第5092473号、第5092474号、
第5097457号、第5099304号、第5099305号、第5099306号、
第5099307号、第5099308号、第5104394号、第5141155号、
第5177916号、第5322928号、第5501472号
GREE、およびGREEロゴ(キューブ)は、グリー株式会社 GREE, Inc.の登録商標です。
第4887424号、第5052688号、5242322号、第5455166号、
第5540062号、第5582830号、第5582831号、
商願2012-12969、商願2013-4393、商願2013-50560、
商願2013-69006、商願2013-69011
グリー、およびグリーロゴ(キューブ)は、グリー株式会社 GREE, Inc.の登録商標です。
登録番号は第5284832号です。
GREE、およびGREEロゴ(キューブ)は、グリー株式会社 GREE, Inc.の国際登録商標(1121990)です。
関連記事
-
DisqusCommentとZenbackの同時利用時の位置入れ替え
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
JetPack統計情報は復旧できる!見えていないだけだから大丈夫
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
04.Jetpack コメント-Jetpack by WordPress.com
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
WelCart専用テーマPayPal Vermilionのインストールと有効化手順
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
WordPressインストール後のトップページ設定
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
ウィジェットでのPHP実行にPHP Code Widget_v2.2-wordpressプラグインを利用
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
wordpressでテーブルタグの簡易作成方法
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
嬉しい悲鳴を伝えてくれるwordpressダッシュボードが可愛い
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
WordPressで別のサイトに復旧(テスト・一時)サイトを公開し重複サイトを回避する一案
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
17.ウィジェット表示管理-Jetpack by WordPress.com
Google or AdMax Promotion(it) 禁断の機能がau公式 …