diff --git a/wp-admin/includes/class-custom-background.php b/wp-admin/includes/class-custom-background.php index bc3c082bc3..5c65c6b282 100644 --- a/wp-admin/includes/class-custom-background.php +++ b/wp-admin/includes/class-custom-background.php @@ -117,8 +117,10 @@ class Custom_Background { if ( isset( $_POST['reset-background'] ) ) { check_admin_referer( 'custom-background-reset', '_wpnonce-custom-background-reset' ); + remove_theme_mod( 'background_image' ); remove_theme_mod( 'background_image_thumb' ); + $this->updated = true; return; } @@ -126,8 +128,10 @@ class Custom_Background { if ( isset( $_POST['remove-background'] ) ) { // @todo Uploaded files are not removed here. check_admin_referer( 'custom-background-remove', '_wpnonce-custom-background-remove' ); + set_theme_mod( 'background_image', '' ); set_theme_mod( 'background_image_thumb', '' ); + $this->updated = true; wp_safe_redirect( $_POST['_wp_http_referer'] ); return; @@ -204,8 +208,10 @@ class Custom_Background { if ( isset( $_POST['background-color'] ) ) { check_admin_referer( 'custom-background' ); + $color = preg_replace( '/[^0-9a-fA-F]/', '', $_POST['background-color'] ); - if ( strlen( $color ) == 6 || strlen( $color ) == 3 ) { + + if ( strlen( $color ) === 6 || strlen( $color ) === 3 ) { set_theme_mod( 'background_color', $color ); } else { set_theme_mod( 'background_color', '' ); @@ -308,7 +314,7 @@ class Custom_Background { - +