Невозможно получить роль пользователя в скрытых полях формы Forminator с помощью php-кодаPhp

Кемеровские программисты php общаются здесь
Anonymous
Невозможно получить роль пользователя в скрытых полях формы Forminator с помощью php-кода

Сообщение Anonymous »

Я пытаюсь использовать приведенный ниже код, чтобы получить роли текущего вошедшего в систему пользователя в скрытое поле «Пользовательское значение» в форме Forminator. Однако после отправки формы Submission возвращает только {all_user_roles} вместо фактических ролей пользователя. Что не так с моим кодом?
add_action('init', function() {

add_filter('forminator_custom_form_submit_field_value', 'inject_user_roles_into_hidden_field', 10, 4);

function inject_user_roles_into_hidden_field($value, $field, $submitted_data, $form_id) {

// Only target this hidden field
if (!isset($field['element_id']) || $field['element_id'] !== 'hidden-9') {
return $value;
}

// WordPress-standard role retrieval (as per StackOverflow best practice)
if (is_user_logged_in()) {
$user = wp_get_current_user(); // WP_User object
$roles = (array) $user->roles; // Always an array
return implode(', ', $roles); // Convert to string
}

return 'guest';
}
});


Подробнее здесь: https://stackoverflow.com/questions/798 ... h-php-code

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