'ids', 'number' => 0]); foreach ($sites as $site_id) { switch_to_blog($site_id); berqwp_activate_single_site(); restore_current_blog(); } } else { berqwp_activate_single_site(); } // Install the advanced-cache.php drop-in (shared across network) berqwp_install_dropin(); } function berqwp_install_dropin() { if (defined('BERQWP_ADVANCED_CACHE_PATH')) { $dropin_file = BERQWP_ADVANCED_CACHE_PATH; } else { $dropin_file = WP_CONTENT_DIR . '/advanced-cache.php'; } if (!file_exists($dropin_file) || (file_exists($dropin_file) && is_writable($dropin_file))) { $dropin_content = file_get_contents(optifer_PATH . 'advanced-cache.php'); file_put_contents($dropin_file, $dropin_content); berqwp_enable_advanced_cache(true); } } function berqwp_deactivate_plugin($network_wide = false) { // Remove the shared drop-in if (defined('BERQWP_ADVANCED_CACHE_PATH')) { $dropin_file = BERQWP_ADVANCED_CACHE_PATH; } else { $dropin_file = WP_CONTENT_DIR . '/advanced-cache.php'; } if (file_exists($dropin_file)) { unlink($dropin_file); } berqwp_enable_advanced_cache(false); if (function_exists('is_multisite') && is_multisite() && $network_wide) { $sites = get_sites(['fields' => 'ids', 'number' => 0]); foreach ($sites as $site_id) { switch_to_blog($site_id); do_action('berqwp_deactivate_plugin'); restore_current_blog(); } } else { do_action('berqwp_deactivate_plugin'); } } bwp_lock_cache_directory(); bwp_serve_advanced_cache();