Описание activated_plugin
— Action
Хук activated_plugin срабатывает после активации плагина в WordPress. Он позволяет выполнять дополнительные операции или настройки, когда плагин активируется, что может быть полезно для инициализации данных или настройки параметров
Примеры использования
Пример создания пользовательских настроек при активации плагина:
add_action('activated_plugin', function($plugin) {
// Проверяем, какой плагин был активирован
if ($plugin === 'my-plugin/my-plugin.php') {
// Устанавливаем значения по умолчанию для настроек
add_option('my_plugin_setting', 'default_value');
}
});
В этом примере мы создаем значения по умолчанию для настроек, если активируется наш плагин
Пример регистрации пользовательской таблицы в базе данных:
add_action('activated_plugin', function($plugin) {
if ($plugin === 'my-plugin/my-plugin.php') {
global $wpdb;
$table_name = $wpdb->prefix . 'my_plugin_table';
$charset_collate = $wpdb->get_charset_collate();
// Создаем SQL-запрос для создания таблицы
$sql = "CREATE TABLE IF NOT EXISTS $table_name (id mediumint(9) NOT NULL AUTO_INCREMENT, name tinytext NOT NULL, PRIMARY KEY (id)) $charset_collate;";
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
dbDelta($sql);
}
});
Здесь мы создаем таблицу в базе данных, если активируется наш плагин
Пример отправки уведомления администратору при активации плагина:
add_action('activated_plugin', function($plugin) {
if ($plugin === 'my-plugin/my-plugin.php') {
// Отправляем уведомление администратору
wp_mail(get_option('admin_email'), 'Плагин активирован', 'Плагин My Plugin был успешно активирован');
}
});
В этом примере мы отправляем уведомление администратору о том, что плагин был активирован
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнить действия сразу после активации плагина, такие как создание настроек или таблиц в базе данных
– Производительность
Убедитесь, что действия, выполняемые в хуке, не занимают много времени, чтобы избежать задержек при активации плагина
– Предупреждения
Будьте внимательны с изменениями в базе данных и настройках, чтобы не вызвать конфликты при повторной активации
Альтернативы
Тип: action
Этот хук позволяет выполнять действия только при активации конкретного плагина
Используйте его, если необходимо выполнить действия, связанные только с одним плагином, например, создание таблиц или опций