エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


WordPressのフォームプラグイン「MW WP FORM」でメールが送信できない不具合の対応方法

      2019/03/02

MW WP FORMで「There was an error trying to send your message. Please try again later.」のエラーが出てメールが送信できない!ときの対応方法

 

MW WP Formはメールフォームを作るのに最適なプラグイン

 
MW WP FORMは、WordPressのプラグインで、管理画面とお問合せ内容の管理をする仕組みがあるお問い合わせフォームを設置しようとする際に利用するプラグインです。
 
よく練られた機能が搭載されていて、拡張性も高く、多様な仕組みのお問い合わせフォーム構築に対応できるプラグインです。
 
 
そんな便利なプラグインなのですが、やっぱり、設定を間違ってしまうとエラーが出てしまいます。当たり前ですが。
 
そのエラーの一つに、「メールが送信されない」というものがあります。
 
お問合せフォームを作っても、メールが送信されないのでは全く役に立ちません。
この記事ではそんな「メールが送信されない」というエラーが出たときの対処方法のいくつかを紹介します。
 
 
MW WP Formの使い方に関しては下記に記事を書いていますので、参考にしてください。
MW WP Formの使い方詳細解説・WordPressの確認画面付フォーム
 
 

「自動返信メール設定」の「本文」に何も入力がない場合

 
01_WordPressのフォームプラグイン「MW WP FORM」でメールが送信できない不具合の対応方法
 
フォームの設定画面の右側には、お問い合わせフォームから自動返信メールを送信するための設定をする項目が並んでいます。
 
上の方が「自動返信メール設定」で、フォームに入力を行ったユーザ宛に送信するメールに関する設定を行うエリアです。
 
その下にあるのが「管理者宛メール設定」では、管理者宛に送信するメールに関する設定を行うエリアです。
 
 
このうち「自動返信メール設定」の「本文」に何も入力がない場合は、「There was an error trying to send your message. Please try again later.」のエラーが表示され、データベースにも値が保存されません。
 
下記のオフィシャルサイトにも説明がありますが、「本文」に何も入力がない場合は、「メールを送信する必要がない」と判断し、エラーメッセージを表示するようになっています。
 
https://plugins.2inc.org/mw-wp-form/faq/
 
 
MW WP Formの動作検証などで、まずは動作させることを目的としている場合などは、最低限の設定だけをして、「本文」を入力していない場面などもあるでしょう。
 
そんな時は「本文」を入力すると動作するようになるかもしれません。
 


 

</form>タグを記述するとメールが送信されない

 
02_WordPressのフォームプラグイン「MW WP FORM」でメールが送信できない不具合の対応方法
 
上記のように、フォームの編集エリアに「</form>タグ」を記述するとエラーでメールが送信できなくなります。
 
 
03_WordPressのフォームプラグイン「MW WP FORM」でメールが送信できない不具合の対応方法
 
理由は、上記の赤の網掛けのエリアに入力した情報に対して、その前後に「<form>」「</form>」タグが自動的に編集されます。
加えて、フォームで使用する「トークン」と「リファラー」の情報を hiddenの値として編集しています。
 

 
具体的には、上記の 1行目、5~7行目の部分が追加されます。
(実際のソースの 5~7行目は改行されていませんが、見やすくするため改行を入れています。)
 
そのため、フォーム編集エリアに「</form>タグ」を編集すると、それ以降のトークンとリファラーの情報の受け渡しが行われず、「There was an error trying to send your message. Please try again later.」のエラーにつながります。
 
先に HTMLソースを制作し、それを WordPressに組み込んでいく、という作業をする場合に、「<form>」「</form>」タグの消し忘れは起こりえる可能性がありますので、改めて確認をしてみてください。
 
 
また、編集するとエラーになるのは「</form>」の終了タグ側だけで、「<form>」の開始タグを編集しても不具合にはなりません。(「<form>」タグが二重になりますので、「<form>」も入れていいわけではありませんが。)
 
 
ちなみに、トークン、リファラーは、セキュリティ関連のCSRF(cross-site request forgeries。クロスサイトリクエストフォージェリ)対策のための処理に使われます。
 
 

そもそもメール送信プログラムが設置されていない

 
上記 2つのメールが送信されない原因について解説しましたが、そもそもメールを送信する設定が正しくない、という場合もあります。
 
具体的には、WordPressを設置したサーバ環境にメールを送信するプログラム(sendmail)が設置されていない、ということが考えられます。
 
 
その場合は、「WP Mail SMTP」などのプラグインを利用して、まずは、メールが送信できる環境があるか、を確認してみましょう。
 
「WP Mail SMTP」については下記に記事を書いていますので参考にしてください。
WP Mail SMTP、WP SMTP、Easy WP SMTPでWordPressのメールのスパム判定を回避
 
 

「There was an error trying to send your message. Please try again later.」のメッセージは MW WP Form 3.2.0で実装

 
今回、この記事で紹介している、メールが送信されない場合に表示される「There was an error trying to send your message. Please try again later.」というメッセージですが、これは、MW WP Form 3.2.0で実装されたメッセージです。
 
ですが、これは、メール送信処理が大きく変わったということではなく、エラー時にメッセージを出すようにした、という変更です。
 
そのため、MW WP Formをアップデートしたらいきなり出るようになった、という場合は、もともとメールが送信できていなかった可能性がある、ということです。
 
3.2.0以前は、エラーがあってもメッセージを出していなかったのですが、3.2.0でエラーがある場合はメッセージを出すようにした、ということだそうです。
 
詳しくは下記を参照。
https://ja.wordpress.org/support/topic/mw-wp-form%E3%81%AE%E9%80%81%E4%BF%A1%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E9%96%A2%E3%81%97%E3%81%BE%E3%81%97%E3%81%A6/

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Rich ReviewsでWordPressに口コミサイトを簡単に構築する方法

口コミサイトに必要なレビュー投稿機能を提供するプラグインです。独自のフォームをショートコードで編集する自由度が高い設計で、平均点の表示も用意されています。

WordPressの 外観のテーマのための関数の並び順

WordPressのカスタマイズの際にテーマのテンプレートを編集しますが、そのテーマファイルの並び順の解説です。

WordPress・Contact Form7、MW WP Form共通 細かなデザイン調整方法

お問い合わせフォームプラグインの Contact Form7、MW WP Formにおけるラジオボタン、チェックボックスなどの見た目を調整する小技を紹介。

WordPressプラグインの3つのインストール方法解説

プラグインのインストール方法の特徴とおススメの方法を理由を含めて解説していきます。

XAMPPのWordPressの更新でFatal error: Maximum execution time of 30 seconds exceededのエラーが発生して失敗する場合の対処方法

XAMPP環境のWordPressアップデート時に「Maximum execution time of 30 seconds exceeded」のエラーが出る。「max_execution_time」を変更して解決する方法の解説。

wp_mail()関数でWordPressのスパム対策済のメールフォーム作成

WordPressでメール送信フォームを作成するための関数「wp_mail()」の使い方の解説。CC、BCC、添付ファイルも HTMLメールも設定可能。

Autoptimizeで簡単設定!HTML、JS、cssを圧縮しWordPress高速化!

Autoptimizeを使って簡単にHTML、JavaScript、CSSを圧縮しサイトの表示を高速化しよう!基本設定、拡張設定とあり柔軟な設定で多彩な環境に対応出来ます。

WordPressの不正ログインを Force email loginで回避

WordPressのセキュリティ強化に Force email loginを使う理由と設定方法の解説をしています。

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成する方法を説明しています。

WordPressで WPtouchを入れてモバイルテーマを「OFF」にしたら元に戻れなくなった

WPtouchを入れてモバイルテーマを「OFF」にしたら元に戻れなくなった。これは「wp_footer」の設定に問題があるからだった。