Задача. На сайте есть кастомное поле для страницы пользователей в виде Выбора созданное в Advanced Custom Fields. Необходимо сделать так, чтобы значение поля мог изменять только администратор сайта, а для других пользователей поле отображалось, но они не могли его изменить (редактировать), т.е. должно быть с атрибутом атрибут «disabled» (Изображение 1).
Решение. Нужно сделать поле недоступным для пользователей нужно использовать хук-фильтр плагина acf/load_field/name=name_field
. В Коде #1 в кастомное поле 'name_field'
будет задаваться атрибут disabled
для всех текущих пользователей, кроме адиминистратора. В коде указаны какие могут быть еще типы пользователей (editor | author | contributor | subscriber).
1 2 3 4 5 6 7 8 9 10 11 |
## Disabled field / Сделать недоступным поле для изменения function wpcraft_acf_field_disabled( $field ) { // для всех кроме администратора (editor | author | contributor | subscriber) $field['disabled'] = ! current_user_can('administrator'); return $field; } // name_field - имя ACF поля add_filter( 'acf/load_field/name=name_field', 'wpcraft_acf_field_disabled' ); |