MW WP Formでよく使う設定の覚え書き

2020-06-18

確認画面が用意されているメールフォームプラグイン MW WP Form でよく使う機能をまとめておきたいと思い覚え書き。

セレクトボックスの「選択してください」などの初期値を設定したい時

出力したいコード

<select name="fruits">
	<option value="" selected="selected">選択してください</option>
	<option value="りんご">りんご</option>
	<option value="みかん">みかん</option>
	<option value="いちご">いちご</option>
	<option value="バナナ">バナナ</option>
</select>

MMW WP Formタグで

[mwform_select name="fruits" children=":選択してください,りんご,みかん,いちご,バナナ" post_raw="true"]

初期値にしたい項目に「:」をつける
post_raw="true"を追加する

そうすると最初の項目は空の値と見なされる。

MW WP Formで自動改行を無効にする

MW WP Formで入力画面、確認画面、送信完了画面の全てでpタグが自動挿入されるのを無効にしたい場合

こちら参考:
MW WP Form の自動改行処理を設定するフィルターフックについて

add_filter( 'mwform_content_wpautop_mw-wp-form-XXX', '__return_false' )

「XXX」はMW WP Formのフォーム識別子を入れる

全てのフォームでwpautop自動改行を無効にしたい時は

function mvwpform_autop_filter() {
  if ( class_exists( 'MW_WP_Form_Admin' ) ) {
    $mw_wp_form_admin = new MW_WP_Form_Admin();
    $forms = $mw_wp_form_admin->get_forms();
    foreach ( $forms as $form ) {
      add_filter( 'mwform_content_wpautop_mw-wp-form-' . $form->ID, '__return_false' );
    }
  } 
}
mvwpform_autop_filter();

MW WP Formで郵便番号住所自動入力(Yubinbango)を使いたい時

先日まとめました:

MW WP Formのformタグに[h-addr]クラスを追加する

function mwform_form_class() {
  ?>
    <script>
      jQuery(function($) {
        $( '.mw_wp_form form' ).attr( 'class', 'h-adr' );
      });
    </script>
  <?php
}
add_action( 'wp_head', 'mwform_form_class', 10000 );

MW WP Formのエラーメッセージをカスタマイズしたい

MW WP Formでデフォルトで出力されるメッセージはなんとなく味気ないのでメッセージ文言を変更したい時

公式サイトのバリデーションルールマニュアル:
https://plugins.2inc.org/mw-wp-form/manual/validation-rule/

function mv_wp_form_error_msg ( $validation ) {
    $validation->set_rule('名前','noEmpty',array('message' => '必ず入力してください'));
    $validation->set_rule('ふりがな','noEmpty',array('message' => '必ず入力してください'));
    $validation->set_rule('郵便番号','noEmpty',array('message' => '必ず入力してください'));
    $validation->set_rule('性別','required',array('message' => '性別を選択してください')); //ラジオボタンの必須チェック
$validation->set_rule('メールアドレス','noEmpty',array('message' => '必ず入力してください'));
    $validation->set_rule(
       '確認メールアドレス',
       'eq',
       array(
        'target' => 'メールアドレス',
        'message' => 'メールアドレスが一致しません'
    ) );
    return $validation;
}
add_filter( 'mwform_validation_mw-wp-form-XXX', 'mv_wp_form_error_msg' );

ラジオボタンの必須チェックはrequiredになるので注意。

もっとあると思いますので、随時更新したいと思います

MW WP Form