disable(self::getIntegrationName()); } public static function uninstall(): void { if (!self::loadAcyMailingLibrary()) { return; } $pluginClass = new PluginClass(); $pluginClass->deleteByFolderName(self::getIntegrationName()); } public function register(array &$integrations, string $acyVersion): void { if (version_compare($acyVersion, '9.8.0', '>=')) { $integrations[] = [ 'path' => __DIR__, 'className' => self::INTEGRATION_PLUGIN_NAME, ]; } } private static function getIntegrationName(): string { return strtolower(substr(self::INTEGRATION_PLUGIN_NAME, 7)); } private static function loadAcyMailingLibrary(): bool { $ds = DIRECTORY_SEPARATOR; $vendorFolder = dirname(__DIR__).$ds.'acymailing'.$ds.'vendor'; $helperFile = dirname(__DIR__).$ds.'acymailing'.$ds.'back'.$ds.'Core'.$ds.'init.php'; return file_exists($vendorFolder) && include_once $helperFile; } } new AcyMailingIntegrationForAcf();