初めて質問させていただきます。
経緯:
WordPressのプラグインを使った教室運営システムのメンテナンスをしているのですが、フロントの会員登録フォームが独自HTMLで仕様的に問題があったので、Stripe等のクレジットカード連携処理が標準で搭載されていることもあり、会員登録の部分はSimple membershipを使うことに決定しました。
【今まで行っていたこと】
生徒登録用の独自HTMLフォームを作成
IDとパスワードとメールアドレスのみの入力フォームで登録ボタンにname=student_submitをセット
functions.phpでの処理:
講師登録用のHTMLフォームからPOSTされたらstudent-entry.phpを呼ぶ
if(isset($_POST['student_submit'])){
get_template_part( 'inc/student' , 'entry' );
}
teacher-entry.phpでの処理:
講師登録用の独自HTMLフォームから値を受け取ったら権限はauthorをセットしてWordPressでのユーザー登録処理。
$userdata = array(
'user_login' => $user_name, // ログイン名
'user_pass' => $user_pass, // パスワード
'user_email' => $user_email, // メールアドレス
'role' => 'author', // 権限
);
$user_id = wp_insert_user( $userdata );
☆ユーザー登録処理の際は同時にmemberというカスタムフィールドにstudentという値をセット
function user_cf_set($user_id) {
$user = get_user_by( 'id', $user_id);
if( in_array( 'author' , $user->roles , true ) ) {
update_user_meta($user_id, 'member', 'student');
}
}
add_action( 'user_register', 'user_cf_set', 10, 1 );
調べたこと・試したこと:
1.Simple MembershipはForm Shortcodeというアドオンを使えばユーザー権限ごとの登録フォームを作成できるため、author権限専用の会員レベルと登録フォームを作成しました。
2.またSimple Membershipはユーザー登録情報はWordPressで使っているDBテーブルとは別の独自テーブルに値を保持するようですが、Simple MembershipはWordPressユーザーを強制同期できる機能があるため、Simple Membershipで作成したauthor権限専用の登録フォームから会員登録を行うとWordPressユーザーにもauthor権限のユーザーが同時に作成されることが確認できました。
やりたいこと:
上記1,2まではよかったのですが、今まで行っていた上記☆の処理、Simple membershipからauthor権限の新規会員を登録する時に、memberというカスタムフィールドにstudentという値をセットさせることがどうしてもできません。
Simple membershipの独自関数でないとユーザー登録時の情報が取れないようなのですが、いかんせん独自関数に関する情報と時間が足りず、誠に恐縮なのですがfuctions.phpに記載する、Simple membershipからauthor権限の新規会員を登録する時にmemberというカスタムフィールドにstudentという値をセットさせるコードをご教示いただけないでしょうか。
大変あつかましいお願いとは思いますが、どうかよろしくお願いいたします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。