Активация одного плагина через php

OK Я знаю, что это было задано раньше, но я хочу знать, насколько эффективней и чистым я могу это сделать.

У меня есть автоматическое предоставление через serverpilot, который устанавливает WordPress для клиента на цифровом океаническом сервере.
У меня проблема:
Я хочу активировать плагин, который помогает клиенту при первом запуске WordPress. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу заставить свой скрипт получить доступ к своей БД для активации плагина, как только скрипт добавит файл в каталог плагина. Я хочу, чтобы плагин активировался через PHP. Пока это решение выглядит неплохо, но я хочу знать, является ли это самым простым и чистым способом активации плагина, который я бросаю в каталог плагинов

function MY_toggle_plugins() { include_once( ABSPATH . 'wp-admin/includes/plugin.php' ); $temp_files1 = glob(WP_PLUGIN_DIR.'/*'); $activated=array(); $already_active=array(); foreach($temp_files1 as $file1){ if(is_dir($file1)) { $temp_files2 = glob($file1 . '/*'); foreach($temp_files2 as $file2){ if(is_file($file2) && stripos(file_get_contents($file2),'Plugin Name:')!==false) { $plugin_name_full=basename(dirname($file2)).'/'.basename($file2); if(is_plugin_active($plugin_name_full)) { array_push($already_active, $plugin_name_full); //deactivate_plugins($plugin_name_full); } else{ array_push($activated, $plugin_name_full); //activate_plugin($plugin_name_full); } } } } } echo 'You have activated these plugins:<br/><br/>'.serialize($activated).'<br/><br/>These were already active:<br/><br/>'.serialize($already_active); exit; } //execute MY_toggle_plugins(); 

Если у вас уже установлен плагин как часть начальной настройки, вы можете добавить к нему загрузчик в mu-plugins который активирует его.

Обязательные плагины не требуют активации, поэтому добавление вызова для activate_plugin() внутри него будет пытаться автоматически активировать ваш плагин при каждой загрузке. Это становится проблемой, если вы когда-либо захотите отключить плагин, поскольку он будет просто повторно активироваться при загрузке следующей страницы, но один из способов – удалить плагин с обязательным использованием, чтобы включить деактивацию другого.