diff --git a/wp-includes/functions.php b/wp-includes/functions.php index 178cc6675..205a442f5 100644 --- a/wp-includes/functions.php +++ b/wp-includes/functions.php @@ -1008,7 +1008,10 @@ function delete_all_user_settings() { * @return mixed A scalar data */ function maybe_serialize( $data ) { - if ( !is_scalar( $data ) ) + if ( is_array( $data ) || is_object( $data ) ) + return serialize( $data ); + + if ( is_serialized( $data ) ) return serialize( $data ); return $data;