カテゴリー: WordPress
この記事は2019年9月15日に書かれたものです。情報が古い可能性がありますのでご注意ください。
WordPress のメールフォームプラグイン MW WP Form を利用しているサイトの一つで、下記のように各項目の内容が空のメールが送信される現象がありました。
お問い合わせフォームより送信されました。
------------------------------
お名前 :
メールアドレス :
お電話番号 :
お問い合わせ内容 :
------------------------------
メールに送信元の情報を記載するようにしているので、そのIPアドレスを調べてみたら、発信元はロシアで、いくつかのスパムレポート(ブラックリスト)に載っていました。
各項目は必須項目となっていますが、そのチェックに引っ掛からずに送信されてます。恐らく、スパムボットによって直接メールフォームプログラムにアクセスして送信されているものと思われますが、その内容が、不正サイトに誘導するわけでもなく、空なのでスパム行為の意図が不明です。
でも、頻繁に空メールが送られてくるのは鬱陶しいので、対策を施してみました。
“MW WP Form で空メールが送信される現象とその対策” の続きを読む »
カテゴリー: WordPress
この記事は2017年4月19日に書かれたものです。情報が古い可能性がありますのでご注意ください。
WordPress のメールフォームプラグイン「MW WP Form」のセレクトボックスで、先頭に「選択してください」と表示してこれを空欄とみなす方法として、サポートフォーラム等で紹介されている方法は、次のように JavaScript を使う方法です。
管理画面でセレクトボックスを配置するときに
[mwform_select name="hoge" children=",山,海,川"]
のような感じでchildrenの最初に , を入れます。
これでvalueが空の項目が追加されます。
このままだと「選択してください」の表示がされないので、JavaScriptを使い
<script type="text/javascript">
jQuery( function( $ ) {
$( '#mw_wp_form_mw-wp-form-710 select option[value=""]' )
.html( '選択してください。' );
} );
</script>
としてやると表示されるようになります(セレクタは適当に合わせてください)。
ただ、これだと option 要素の内容(label)がないので HTML5 の文法的にはバリデーションエラーとなります。もっとも、MW WP Form では form 要素の action 属性の値が空なので、ここもバリデーションエラーとなるのですが。
で、いろいろ試していたら、MW WP Form の機能だけで簡単に、先頭に「選択してください」と表示してこれを空欄とみなす処理ができることがわかりました。
“MW WP Form のセレクトボックスで「選択してください」を空欄とみなす最も簡単な方法(JavaScript 非使用)” の続きを読む »