Описание muplugins_loaded
— Action
Хук muplugins_loaded срабатывает после загрузки всех обязательных плагинов (mu-plugins) в WordPress. Он позволяет выполнять определенные действия или инициализацию кода сразу после этого этапа загрузки, что делает его полезным для настройки функциональности сайта
Примеры использования
Пример регистрации пользовательских постов после загрузки обязательных плагинов:
add_action('muplugins_loaded', function() {
register_post_type('custom_post', array(
'labels' => array(
'name' => 'Пользовательские посты',
'singular_name' => 'Пост'
),
'public' => true,
'has_archive' => true
));
});
В этом примере мы регистрируем новый пользовательский тип поста ‘custom_post’ после загрузки обязательных плагинов
Пример инициализации пользовательских настроек:
add_action('muplugins_loaded', function() {
if ( ! get_option('my_custom_option') ) {
add_option('my_custom_option', 'значение');
}
});
Здесь мы проверяем, существует ли опция ‘my_custom_option’, и при необходимости создаем ее
Пример подключения кастомного файла конфигурации:
add_action('muplugins_loaded', function() {
require_once __DIR__ . '/my-custom-config.php';
});
В этом примере мы подключаем файл конфигурации, который может содержать дополнительные настройки для вашего сайта
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнить код после загрузки обязательных плагинов, особенно для инициализации функциональности или настройки
– Производительность
Этот хук может повлиять на время загрузки, если в нем выполняется тяжелый код, поэтому старайтесь оптимизировать его использование
– Предупреждения
Следите за тем, чтобы код, выполняемый в этом хуке, не вызывал ошибок, так как они могут повлиять на работу сайта
Альтернативы
Тип: action
Этот хук срабатывает после загрузки всех активных плагинов, включая mu-plugins
Используйте его, если вам нужно выполнить код после загрузки всех плагинов, а не только обязательных
Тип: action
Этот хук срабатывает позже в процессе загрузки, после того как все плагины активированы
Используйте его для инициализации функциональности, которая зависит от всех загруженных плагинов