Когда срабатывает действие admin_init в WordPress?
У меня есть эта функция, которая вызывается с помощью действия admin_init
:
function my_flush_rewrites() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
Она подключена следующим образом:
add_action('admin_init', 'my_flush_rewrites');
Мне интересно, когда именно она вызывается? Вызывается ли она при каждой загрузке страницы? Надеюсь, что нет.

admin_init срабатывает перед любым другим хуком при доступе пользователя в админку. Этот хук не предоставляет никаких параметров, поэтому может использоваться только для вызова указанной функции.
Так что да, он выполняется при каждой загрузке админ-страницы.

Да, я это читал, но не был уверен. В общем, мой обычный пользователь не будет постоянно нажимать на это снова и снова, этого я и боялся. Спасибо за быстрый ответ!

Не стоит добавлять вызов flush rules в admin_init
именно потому, что он выполняется каждый раз при загрузке административной страницы. Вместо этого запускайте его при активации, деактивации плагина или, если у плагина есть страница настроек, при сохранении новых настроек.

Все хуки выполняются после того, как основное приложение WordPress завершает процесс загрузки.
Таким образом, хуки инициализации в основном используются для запуска процессов в плагинах и темах.
Доступные хуки инициализации в WordPress, в порядке их выполнения:
1) init -> срабатывает после завершения загрузки WordPress, но до отправки заголовков. Обычно используется плагинами для инициализации их процессов.
2) widgets_init -> используется для регистрации виджетов боковой панели приложения. Функция register_widget
выполняется в рамках этого хука.
3) admin_init -> выполняется как первое действие, когда пользователь получает доступ к административной части WordPress. Обычно используется для инициализации настроек, специфичных для админ-панели.
Хук admin_init
выполняется каждый раз при отображении страницы админки.
Для получения дополнительной информации о процессе активации вы также можете обратиться к WordPress Codex.

Хук admin_init
срабатывает, когда пользователь заходит в админ-панель. Это первый хук, который активируется. Его можно использовать в таких случаях:
- Мы хотим заблокировать доступ к админ-панели для пользователей без роли Администратора.
- Мы хотим автоматически перенаправлять пользователей без указанных прав (capabilities) на главную страницу.
- Мы хотим зарегистрировать новую настройку для использования в плагине.
