追記:2015/1/14
公開後、いくつか不具合の報告をいただいております。下記の場合はPHPのエラーが発生し、ページが表示できない、フォームが正しく動作しないなどの不具合が発生します。不具合が発生したり、該当する可能性がある場合は、一つ前のバージョン(2.1.3)をお使いください。
- Akismetバリデーションを使用している
- 何らかのショートコードを使用している(場合にもよる?)
GitHubで修正版も公開しておりますので、テストしてくださる方がいらっしゃいましたら、こちらをお試しください。
MW WP Form 2.2.0 を公開しました。主な変更箇所は以下のとおりです。
- ユニットテストができるように全面的にリファクタリング
- 変数名・メソッド名の記法の統一
- お問い合せ番号が誤った meta name で保存されるバグを修正
- チェックボックスで複数のデフォルト値を設定できない不具合を修正
- 手動フォームの場合にショートコードのダブルクオーテーションがエスケープされてしまう不具合を修正
- 電話番号・郵便番号バリデーションは日本語環境のみ使用できるように変更
- 電話番号・郵便番号フィールドは日本語環境のみ使用できるように変更
- チェックボックス、セレクトボックス、ラジオボタンで、送信する値と表示する文字列を別々に指定できるように変更
ユニットテストができるように全面的にリファクタリング
これまでユニットテストを行っていなかったので、ユニットテストがしにくいコードとなっていました。そこで、ユニットテストが行いやすいように、全面的にリファクタリングを行いました。かなり大きく変更を入れているので、もしこれまで動いていたものが動かなくなったなどありましたらお知らせいただけると嬉しいです。
変数名・メソッド名の記法の統一
変数名・メソッド名の記法がバラバラになってしまっていたので、リファクタリングのついでに統一を行いました。普通に管理画面からフォームを作成して使っているだけの場合は問題は無いかと思いますが、フックを通してカスタマイズをしていたり、オリジナルのフォームフィールドやバリデーションルールを追加している場合は不具合が発生する可能性があります。一応、できる限り不具合が起きないように配慮したつもりですが、古いメソッド名をお使いの場合は、新らしいメソッド名を使うようにアラートがでるようにしていますので、それに従って修正してください。
チェックボックス、セレクトボックス、ラジオボタンで、送信する値と表示する文字列を別々に指定できるように変更
これまで、チェックボックス、セレクトボックス、ラジオボタンは送信する値と画面に表示する文字列が同じものとなっていました。
[ mwform_radio name="ラジオ" children="あああ,いいい,ううう" ]
の場合、
<input type="radio" name="ラジオ" value="あああ" /> あああ <input type="radio" name="ラジオ" value="あああ" /> いいい <input type="radio" name="ラジオ" value="ううう" /> ううう
のような感じです。この場合、value属性
に使用できない文字が入ってしまう場合は不具合が起こってしまっていました。今回の更新で、下記のように別々の値が指定できるようになりました。
[ mwform_radio name="ラジオ" children="aaa:あああ,iii:いいい,uuu:ううう" ]
だと
<input type="radio" name="ラジオ" value="aaa" /> あああ <input type="radio" name="ラジオ" value="iii" /> いいい <input type="radio" name="ラジオ" value="uuu" /> ううう
のようになります。
ダウンロード
MW WP Form CAPTCHA をお使いの方へ
上記の変更に伴い、MW WP Form CAPTCHAをご利用されている場合、MW WP Form 2.2.0 にバージョンアップするとエラーが出力されるようになりますので、あわせて MW WP Form CAPTCHA 1.2.0 へのバージョンアップもお願い致します。バージョンアップは管理画面から可能です。バージョンアップ通知がでない場合は購入された画面からバージョンアップ版をダウンロードいただけます。