Quelltext des aktuellen Standes
<?php
/**
* Plugin-Deinstallation: alle gespeicherten Optionen und Transients entfernen.
*/
if (!defined('WP_UNINSTALL_PLUGIN')) {
exit;
}
// WordPress-Optionen löschen (neue opennit_* sowie evtl. noch vorhandene alte it_doku_*)
delete_option('opennit_api_url');
delete_option('opennit_api_token');
delete_option('opennit_api_signing_secret');
delete_option('opennit_menu_name');
delete_option('opennit_ticket_page_url');
delete_option('opennit_settings');
delete_option('opennit_connector_version');
delete_option('opennit_assistant_bubble');
delete_option('opennit_assistant_title');
delete_option('opennit_assistant_welcome');
delete_option('opennit_assistant_bubble_logged_in_only');
delete_option('opennit_assistant_context');
delete_option('it_doku_api_url');
delete_option('it_doku_api_token');
delete_option('it_doku_api_signing_secret');
delete_option('it_doku_menu_name');
delete_option('it_doku_ticket_page_url');
delete_option('it_doku_settings');
// Bekannte Transients löschen
delete_transient('opennit_config_cache');
delete_transient('opennit_menu_name_synced');
delete_transient('it_doku_config_cache');
delete_transient('it_doku_menu_name_synced');
// Alle dynamischen Transients (z. B. Rate-Limit, Asset-Cache) per DB-Query entfernen
global $wpdb;
$wpdb->query(
"DELETE FROM {$wpdb->options}
WHERE option_name LIKE '_transient_opennit_%'
OR option_name LIKE '_transient_timeout_opennit_%'
OR option_name LIKE '_transient_it_doku_%'
OR option_name LIKE '_transient_timeout_it_doku_%'"
);