Описание activate_{$plugin}
— Action
Хук activate_{$plugin} срабатывает при активации определенного плагина в WordPress. Этот хук позволяет выполнять действия, такие как настройка параметров плагина, создание таблиц в базе данных или добавление настроек в меню админки. Хук дает возможность разработчикам выполнять необходимые действия сразу после активации плагина
Примеры использования
Пример создания таблицы в базе данных при активации плагина:
add_action('activate_my-plugin/my-plugin.php', function() {
global $wpdb;
$table_name = $wpdb->prefix . 'my_table';
$charset_collate = $wpdb->get_charset_collate();
$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('activate_my-plugin/my-plugin.php', function() {
add_option('my_plugin_option', 'default_value');
});
Здесь мы добавляем значение по умолчанию для опции плагина в базу данных
Пример настройки пользовательских ролей при активации плагина:
add_action('activate_my-plugin/my-plugin.php', function() {
add_role('custom_role', 'Custom Role', array('read' => true));
});
В этом примере мы создаем новую пользовательскую роль при активации плагина
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо выполнить какие-либо действия сразу после активации плагина, такие как создание таблиц или добавление настроек
– Производительность
Убедитесь, что действия, выполняемые в хуке, не занимают слишком много времени, чтобы не замедлить процесс активации
– Предупреждения
Не забудьте удалить или изменить настройки при деактивации плагина, чтобы избежать конфликта
Альтернативы
Тип: action
Этот хук позволяет выполнять действия при деактивации плагина, например, удалять созданные таблицы или настройки
Используйте его, если необходимо очистить данные или настройки, связанные с плагином, при его деактивации