forked from ka215/cdbt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
uninstall.php
39 lines (36 loc) · 1.11 KB
/
uninstall.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
//if uninstall not called from WordPress exit
if (!defined('WP_UNINSTALL_PLUGIN'))
exit();
$option_name = defined('CDBT_PLUGIN_SLUG') ? CDBT_PLUGIN_SLUG : 'custom-database-tables';
$cdbt_options = get_option($option_name);
if (isset($cdbt_options['uninstall_options'])) {
$is_delete = $cdbt_options['uninstall_options'];
} else {
$is_delete = false;
}
if (!is_multisite()) {
if ($is_delete) {
delete_option($option_name);
delete_option($option_name . '_previous_revision_backup');
delete_option($option_name . '_current_table');
}
} else {
global $wpdb;
$blog_ids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
$original_blog_id = get_current_blog_id();
foreach ($blog_ids as $blog_id) {
switch_to_blog($blog_id);
if ($is_delete) {
delete_option($option_name);
delete_option($option_name . '_previous_revision_backup');
delete_option($option_name . '_current_table');
}
}
switch_to_blog($original_blog_id);
if ($is_delete) {
delete_site_option($option_name);
delete_site_option($option_name . '_previous_revision_backup');
delete_site_option($option_name . '_current_table');
}
}