Невозможно получить роль пользователя в скрытых полях формы 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
Ответить

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

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

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

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

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