get_col( "SELECT blog_id FROM `$wpdb->blogs`" ); foreach ( $ids as $site_id ) { switch_to_blog( $site_id ); add_option( 'statify-blacklist', array( 'activate-referer' => 0, 'referer' => array() ) ); } restore_current_blog(); } else { add_option( 'statify-blacklist', array( 'activate-referer' => 0, 'referer' => array() ) ); } } /** * Plugin uninstall handler. * * @since 1.0.0 */ public static function uninstall() { global $wpdb; if ( is_multisite() ) { $old = get_current_blog_id(); // Todo: Use get_sites() in WordPress 4.6+ $ids = $wpdb->get_col( "SELECT blog_id FROM `$wpdb->blogs`" ); foreach ( $ids as $id ) { switch_to_blog( $id ); delete_option( 'statify-blacklist' ); } switch_to_blog( $old ); } delete_option( 'statify-blacklist' ); } /** * Upgrade plugin options. * * @param object $upgrader Upgrader object (unused) * @param array $options Options array * * @since 1.2.0 */ public static function upgrade() { self::update_options(); /* Check if config array is not associative (pre 1.2.0) */ if ( array_keys( self::$_options['referer'] ) === range( 0, count( self::$_options['referer'] ) - 1 ) ) { /* Flip referer array to make domains keys */ $options = self::$_options; $options['referer'] = array_flip( self::$_options['referer'] ); if ( ( is_multisite() && array_key_exists( STATIFYBLACKLIST_BASE, (array) get_site_option( 'active_sitewide_plugins' ) ) ) ) { update_site_option( 'statify-blacklist', $options ); } else { update_option( 'statify-blacklist', $options ); } } } }