WP-Membersプラグインを利用してWordPressで会員サイトを作成したのだけれど、会員登録時と、登録情報更新時にフォームの入力値チェックを行いたくなった。 JavaScpritでやっちゃおうかなと邪念が働くも、WordPressなのだから、アクションフックがありそうということで、調べてみたらできた。
通常のWordPressの登録の場合、「register_post」を利用すればよさそう。 ただ、WP-Membersの場合は、独自の登録を走らせているようなので、そちらをフックしてやるとOK。
以下のコードでできた。
//ユーザー登録時アクションフック add_action('wpmem_pre_register_data', 'add_data_validate', 1); //ユーザー情報更新時アクションフック add_action('wpmem_pre_update_data', 'add_data_validate', 1); //ユーザー登録・更新時のチェック関数 //登録時も更新時も同じ関数でOK function add_data_validate($fields) { $item = $fields['項目ID']; //項目の値に対するチェック処理 if(チェックがNGの場合){ global $wpmem_themsg; $wpmem_themsg = 'エラーメッセージを記述(項目は2つ以上選択してねとか)'; return; } }
〒180-0013 東京都武蔵野市西久保3-11-1-104