-
Notifications
You must be signed in to change notification settings - Fork 42
/
uninstall.php
36 lines (29 loc) · 772 Bytes
/
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
<?php
/*
* Uninstall plugin
*/
if ( !defined( 'WP_UNINSTALL_PLUGIN' ) )
exit ();
if ( is_multisite() ) {
$ms_sites = function_exists( 'get_sites' ) ? get_sites() : wp_get_sites();
if( 0 < count( $ms_sites ) ) {
foreach ( $ms_sites as $ms_site ) {
$blog_id = class_exists( 'WP_Site' ) ? $ms_site->blog_id : $ms_site['blog_id'];
switch_to_blog( $blog_id );
uninstall();
restore_current_blog();
}
}
} else {
uninstall();
}
function uninstall() {
global $wpdb;
$option_names = array( 'views_options', 'widget_views_most_viewed', 'widget_views' );
if( count( $option_names ) > 0 ) {
foreach( $option_names as $option_name ) {
delete_option( $option_name );
}
}
$wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key = 'views'" );
}