prefix.'users'; $sql = "ALTER TABLE $users_table_name ADD whitelist INT NOT NULL DEFAULT '0';"; $wpdb->query($sql); } //Filters add_filter('manage_users_columns', 'add_albus_column'); add_filter('manage_users_custom_column', 'manage_albus_column', 10, 3); function add_albus_column($columns) { $columns['whitelist'] = 'Whitelisted'; return $columns; } function manage_albus_column($empty='', $column_name, $id) { global $wpdb; if( $column_name == 'whitelist' ) { $user_info = get_userdata($id); $user_login = $user_info->user_login; if($user_login != 'admin') { if($user_info->whitelist == '1') { $whitelisted = 'Yes'.'
'.'
Remove from whitelist
'; } else { $whitelisted = 'No'.'
'.'
Add to whitelist
'; } } else { $whitelisted = 'Cannot be whitelisted'; } return $whitelisted; } } function albus_register_settings() { if( strstr( $_SERVER['PHP_SELF'], '/wp-admin/users.php' ) && current_user_can( 'edit_users' ) ) { if( isset( $_GET['whitelist'] ) ) { if( is_numeric($_GET['whitelist']) ) { global $wpdb; $userdata = get_userdata($_GET['whitelist']); $users_table_name = $wpdb->prefix.'users'; if ( $userdata->whitelist != '1' ) { $wpdb->update( $users_table_name, array( 'whitelist' => '1'), array( 'ID' => $_GET['whitelist'] ) ); //wp_mail( $to, $subject, $message, $headers, $attachments ); wp_mail( $userdata->user_email, 'Whitelisted', 'You are now whitelisted on '.get_bloginfo('name').'!'); } } else { global $wpdb; $userdata = get_userdatabylogin($_GET['whitelist']); $users_table_name = $wpdb->prefix.'users'; if ( $userdata->whitelist != '1' ) { $wpdb->update( $users_table_name, array( 'whitelist' => '1'), array( 'user_login' => $_GET['whitelist'] ) ); //wp_mail( $to, $subject, $message, $headers, $attachments ); wp_mail( $userdata->user_email, 'Whitelisted', 'You are now whitelisted on '.get_bloginfo('name').'!'); } } } elseif( isset( $_GET['blacklist'] ) ) { if ( is_numeric($_GET['blacklist']) ) { global $wpdb; $users_table_name = $wpdb->prefix.'users'; $wpdb->update( $users_table_name, array( 'whitelist' => '0'), array( 'ID' => $_GET['blacklist'] ) ); } } } } add_action( 'admin_init', 'albus_register_settings' ); ?>