2017-04-18 1 views
0

登録フォームに基づいてWordPressでカスタムユーザーロールを割り当てたいとします。たとえば、登録用紙に「教師」と「学生」があります。ユーザーが「生徒」を選択すると、デフォルトの生徒の代わりに生徒の役割が自動的に割り当てられるように、2つのチェックボックスを付ける必要があります。登録フォームからWordPressの新しいユーザーにカスタムロールを割り当てる方法

どうすればいいですか?

答えて

1

ユーザがロールを登録して追加するときにアクションフックを追加できます。

add_action('user_register', 'myplugin_registration_save', 10, 1); 

function myplugin_registration_save($user_id) { 
    $user = new WP_User($user_id); 

    $user->remove_role('subscriber'); // Optional, you don't have to remove this role if you want to keep subscriber as well 
    $user->add_role('student'); 
} 
+0

ありがとう@Austin!しかし、あなたが使っている引数 'myplugin_registration_save'は、登録を処理するプラグインの名前に置き換えることができますし、何か他のものであってもかまいません。 functions.phpで?ありがとう – Knight

+0

'myplugin_'は単なる接頭辞であり、あなたが望むもの(あなたのプラグインまたはテーマ接頭辞)で置き換えることができます。また、このコードは 'functions.php'やその他のインクルードファイルに置くことができます。テンプレートファイルには配置しないでください。ただし、ロードが遅すぎる可能性があります。 –

+0

ありがとうございました!私の登録フォームは他のプラグインで使用されています。ファーストネーム、姓、電子メールのみ登録に使用され、他のものはクライアントの詳細を入力するために使用される同じフォームで使用されます。私はそれを登録プラグインで使うかもしれないと思う – Knight

関連する問題