Описание admin_init
— Action
Хук admin_init позволяет выполнять код в админ-панели WordPress. Он срабатывает на этапе инициализации админки, что дает возможность зарегистрировать дополнительные настройки, скрипты или стили, а также обработать данные, отправленные через формы в админке
Примеры использования
Пример регистрации кастомной страницы настроек в админке:
add_action('admin_init', function() {
add_settings_section('my_section', 'Мой раздел', null, 'general');
add_settings_field('my_field', 'Мое поле', 'my_field_callback', 'general', 'my_section');
register_setting('general', 'my_field');
});
В этом примере мы создаем новый раздел и поле в настройках админки
Пример добавления пользовательских стилей в админку:
add_action('admin_init', function() {
wp_enqueue_style('my_admin_styles', get_template_directory_uri() . '/css/admin-styles.css');
});
Здесь мы подключаем кастомный CSS-файл для админки
Пример обработки данных, отправленных через форму в админке:
add_action('admin_init', function() {
if (isset($_POST['my_form_submit'])) {
// Обработка данных формы
}
});
В этом примере мы проверяем, была ли отправлена форма и выполняем обработку данных
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо зарегистрировать настройки, стили или скрипты в админ-панели
– Производительность
Хук срабатывает на каждом запросе к админке, поэтому стоит избегать тяжелых операций
– Предупреждения
Убедитесь, что код внутри хука не вызывает конфликтов с другими плагинами или темами
Альтернативы
Тип: action
Этот хук позволяет добавлять элементы в меню админки и может быть использован для создания новых страниц или подменю
Используйте его, если необходимо добавить новые страницы или подменю в админке
Тип: action
Этот хук используется для подключения скриптов и стилей только на страницах админки
Используйте его для подключения скриптов и стилей, когда они нужны только на определенных страницах админ-панели