98 lines
2.9 KiB
PHP
98 lines
2.9 KiB
PHP
<?php
|
|
/**
|
|
* Remove user metadata and options on plugin delete.
|
|
*
|
|
* @package One User Avatar
|
|
* @author Bangbay Siboliban
|
|
* @author Flippercode
|
|
* @author ProfilePress
|
|
* @author One Designs
|
|
* @copyright 2013-2014 Bangbay Siboliban
|
|
* @copyright 2014-2020 Flippercode
|
|
* @copyright 2020-2021 ProfilePress
|
|
* @copyright 2021 One Designs
|
|
* @version 2.3.9
|
|
*/
|
|
|
|
/**
|
|
* @since 1.4
|
|
* @uses int $blog_id
|
|
* @uses object $wpdb
|
|
* @uses delete_option()
|
|
* @uses delete_post_meta_by_key()
|
|
* @uses delete_user_meta()
|
|
* @uses get_users()
|
|
* @uses get_blog_prefix()
|
|
* @uses is_multisite()
|
|
* @uses switch_to_blog()
|
|
* @uses update_option()
|
|
* @uses wp_get_sites()
|
|
*/
|
|
|
|
if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
|
|
die( 'You are not allowed to call this page directly.' );
|
|
}
|
|
|
|
global $blog_id, $wpdb;
|
|
|
|
$users = get_users();
|
|
|
|
// Remove settings for all sites in multisite
|
|
if ( is_multisite() ) {
|
|
$blogs = wp_get_sites();
|
|
|
|
foreach ( $users as $user ) {
|
|
foreach ( $blogs as $blog ) {
|
|
delete_user_meta( $user->ID, $wpdb->get_blog_prefix( $blog->blog_id ) . 'user_avatar' );
|
|
}
|
|
}
|
|
|
|
foreach ( $blogs as $blog ) {
|
|
switch_to_blog( $blog->blog_id );
|
|
|
|
delete_option( 'avatar_default_wp_user_avatar' );
|
|
delete_option( 'wp_user_avatar_allow_upload' );
|
|
delete_option( 'wp_user_avatar_disable_gravatar' );
|
|
delete_option( 'wp_user_avatar_edit_avatar' );
|
|
delete_option( 'wp_user_avatar_load_scripts' );
|
|
delete_option( 'wp_user_avatar_resize_crop' );
|
|
delete_option( 'wp_user_avatar_resize_h' );
|
|
delete_option( 'wp_user_avatar_resize_upload' );
|
|
delete_option( 'wp_user_avatar_resize_w' );
|
|
delete_option( 'wp_user_avatar_tinymce' );
|
|
delete_option( 'wp_user_avatar_upload_size_limit' );
|
|
delete_option( 'wp_user_avatar_default_avatar_updated' );
|
|
delete_option( 'wp_user_avatar_media_updated' );
|
|
delete_option( 'wp_user_avatar_users_updated' );
|
|
delete_option( 'wpua_has_gravatar' );
|
|
}
|
|
|
|
restore_current_blog();
|
|
} else {
|
|
foreach ( $users as $user ) {
|
|
delete_user_meta( $user->ID, $wpdb->get_blog_prefix( $blog_id ) . 'user_avatar' );
|
|
}
|
|
|
|
delete_option( 'avatar_default_wp_user_avatar' );
|
|
delete_option( 'wp_user_avatar_allow_upload' );
|
|
delete_option( 'wp_user_avatar_disable_gravatar' );
|
|
delete_option( 'wp_user_avatar_edit_avatar' );
|
|
delete_option( 'wp_user_avatar_load_scripts' );
|
|
delete_option( 'wp_user_avatar_resize_crop' );
|
|
delete_option( 'wp_user_avatar_resize_h' );
|
|
delete_option( 'wp_user_avatar_resize_upload' );
|
|
delete_option( 'wp_user_avatar_resize_w' );
|
|
delete_option( 'wp_user_avatar_tinymce' );
|
|
delete_option( 'wp_user_avatar_upload_size_limit' );
|
|
delete_option( 'wp_user_avatar_default_avatar_updated' );
|
|
delete_option( 'wp_user_avatar_media_updated' );
|
|
delete_option( 'wp_user_avatar_users_updated' );
|
|
delete_option( 'wpua_has_gravatar' );
|
|
}
|
|
|
|
// Delete post meta
|
|
delete_post_meta_by_key( '_wp_attachment_wp_user_avatar' );
|
|
|
|
// Reset all default avatars to Mystery Man
|
|
update_option( 'avatar_default', 'mystery' );
|