Назначьте роли WordPress при регистрацииPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Назначьте роли WordPress при регистрации

Сообщение Anonymous »

У меня установлена ​​тема Buddypress, которая позволяет использовать плагин WPJM для регистрации вакансий и резюме. Для этого мне нужно, чтобы пользователи регистрировались в качестве кандидатов или работодателей, чтобы контролировать, кто может просматривать резюме, публиковать вакансии и т. д.
Однако в теме этого нет по стандарту, но их поддержка очень любезна. дайте мне предложенный специальный код для решения этой проблемы. Я не могу заставить это работать и задаюсь вопросом, знает ли кто-нибудь, чего может не хватать?
Вот что они написали мне по этому вопросу:

Код: Выделить всё

Create a Profile Field for “Role”: Set options like “Employer” and “Candidate” for users to select during registration.
Use Code to Assign the Role: A code snippet can assign the correct role based on the user’s selection in this profile field.

Please let us know if you’d like guidance on the custom code snippet to achieve this or if you’d prefer assistance from a developer.

Here is a code snippet you can use to assign a user role based on the value selected in a custom BuddyPress profile field during registration. This example assumes the profile field is named “Role” and has values such as “Employer” or “Candidate.”

function assign_role_based_on_profile_field($user_id) {
// Get the BuddyPress profile data for the registered user
if (function_exists('xprofile_get_field_data')) {
$role_value = xprofile_get_field_data('Role', $user_id); // Replace 'Role' with the exact name of your profile field

// Assign the user role based on the profile field value
if ($role_value == 'Employer') {
// Assign 'employer' role
$user = new WP_User($user_id);
$user->set_role('employer'); // Replace 'employer' with the exact role slug
} elseif ($role_value == 'Candidate') {
// Assign 'candidate' role
$user = new WP_User($user_id);
$user->set_role('candidate'); // Replace 'candidate' with the exact role slug
} else {
// Default role if no specific selection is made
$user = new WP_User($user_id);
$user->set_role('subscriber'); // Or any other default role
}
}
}
add_action('bp_core_signup_user', 'assign_role_based_on_profile_field', 10, 1);

Make sure the roles employer and candidate are defined in your site.
Я хочу использовать стандартные роли пользователей WPJM: работодатель и кандидат. Не уверены, что здесь имеется в виду просто «работодатель» и «кандидат», если быть правильным?
Я спросил у Gemini и Chatgpt, и они, похоже, подтвердили, что это правильно. Но не работает - значит что-то не так и я что-то упускаю.
С уважением,
Фламурен

Подробнее здесь: https://stackoverflow.com/questions/791 ... gistration
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»