Описание additional_capabilities_display
— Action
Хук additional_capabilities_display позволяет управлять отображением дополнительных возможностей для пользователей в WordPress. Он срабатывает при выводе информации о возможностях на странице пользователя и позволяет изменять или добавлять новые возможности
Примеры использования
Пример добавления новой пользовательской возможности для администратора:
add_action('additional_capabilities_display', function($capabilities, $user) {
if($user->has_cap('administrator')) {
$capabilities[] = 'manage_options';
}
return $capabilities;
});
Здесь мы добавляем возможность ‘manage_options’ для пользователей с ролью администратора
Пример удаления возможности для конкретной роли:
add_action('additional_capabilities_display', function($capabilities, $user) {
if($user->has_cap('editor')) {
$capabilities = array_diff($capabilities, ['edit_others_posts']);
}
return $capabilities;
});
В этом примере мы удаляем возможность ‘edit_others_posts’ у редакторов
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить отображение возможностей на странице пользователя
– Производительность
Этот хук не должен существенно влиять на производительность, так как изменения касаются только вывода информации
– Предупреждения
Убедитесь, что изменения не противоречат логике ролей и возможностей в WordPress
Альтернативы
Тип: filter
Этот хук позволяет изменять возможности пользователя на более низком уровне
Используйте его, если нужно более тонко настроить доступ пользователя к возможностям