/6V@ S;/6VS<06V SR06VPS/6V V/6V Y= /6V PZA/6Vp ([=/6V 0\= /6V P\A /6V `\A/6V\< 06VP\u/6V@ 8]= /6V0 P]A/6V]< 06V`]u,/6V[ 06V`]u/6VY<t06V]/6V` a/6VP @f= /6V@ PgA/6V0 Hj= /6V PjA /6V `jA/6Vj<@06V  jG/6V Pk= /6V PkA/6V k<P06V  kH V06V 0kG/6Vp Xn= /6V` PnA /6VP `nA/6V@n<@06V@ P nG/6V `o= /6V PoA/6V`o<P06V`PoHP06VP0oH/6Vhr= /6VPrA /6V`rA/6Vpr<@06Vp` rG/6VPps= /6V@PsA/6Vs<P06VsHP06V0sH/6Vxv= /6VPvA /6V`vA/6Vv<@06V vG/6Vw= /6VPwA/6Vw<P06VPwHP06V@0wH 06V0`wA/6Vf<06V`f 06V`|Me06Vp`|N06V|/6Vp}=/6V`= /6VPPA /6V@`A /6V0pA/6V < 06V Pu*06VP006V0`+@/6V@@,/6V@*@/6Vp@ 06V@`A/6V@==06Vp0PQ 06VPPA/6V`< 06V`pu/6V==06VppQ 06VpPA/6V< 06VuM/6V}@,/6V|*06V|/6V/6V>BBBZzhR@B(qiR`SBB{hRqiRHB }{hR {hR@B@yhRBzhRHqiRXB5ByhRABP}{hRB`D|hRqiRXB5ByhRAB}{hR;B[.BqiRXB5B{hRAByhRBP.BhqiRXB5B{hRAB1|hRSBB@yhR}{hRqiRBBPBHBABBXByhR` ,06Vt $code Error code. * @param string $message Error message. * @param mixed $data Optional. Error data. */ public function add( $code, $message, $data = '' ) { $this->errors[ $code ][] = $message; if ( ! empty( $data ) ) { $this->add_data( $data, $code ); } /** * Fires when an error is added to a WP_Error object. * * @since 5.6.0 * * @param string|int $code Error code. * @param string $message Error message. * @param mixed $data Error data. Might be empty. * @param WP_Error $wp_error The WP_Error object. */ do_action( 'wp_error_added', $code, $message, $data, $this ); } /** * Adds data to an error with the given code. * * @since 2.1.0 * @since 5.6.0 Errors can now contain more than one item of error data. {@see WP_Error::$additional_data}. * * @param mixed $data Error data. * @param string|int $code Error code. */ public function add_data( $data, $code = '' ) { if ( empty( $code ) ) { $code = $this->get_error_code(); } if ( isset( $this->error_data[ $code ] ) ) { $this->additional_data[ $code ][] = $this->error_data[ $code ]; } $this->error_data[ $code ] = $data; } /** * Retrieves all error data for an error code in the order in which the data was added. * * @since 5.6.0 * * @param string|int $code Error code. * @return mixed[] Array of error data, if it exists. */ public function get_all_error_data( $code = '' ) { if ( empty( $code ) ) { $code = $this->get_error_code(); } $data = array(); if ( isset( $this->additional_data[ $code ] ) ) { $data = $this->additional_data[ $code ]; } if ( isset( $this->error_data[ $code ] ) ) { $data[] = $this->error_data[ $code ]; } return $data; } /** * Removes the specified error. * * This function removes all error messages associated with the specified * error code, along with any error data for that code. * * @since 4.1.0 * * @param string|int $code Error code. */ public function remove( $code ) { unset( $this->errors[ $code ] ); unset( $this->error_data[ $code ] ); unset( $this->additional_data[ $code ] ); } /** * Merges the errors in the given error object into this one. * * @since 5.6.0 * * @param WP_Error $error Error object to merge. */ public function merge_from( WP_Error $error ) { static::copy_errors( $error, $this ); } /** * Exports the errors in this object into the given one. * * @since 5.6.0 * * @param WP_Error $error Error object to export into. */ public function export_to( WP_Error $error ) { static::copy_errors( $this, $error ); } /** * Copies errors from one WP_Error instance to another. * * @since 5.6.0 * * @param WP_Error $from The WP_Error to copy from. * @param WP_Error $to The WP_Error to copy to. */ protected static function copy_errors( WP_Error $from, WP_Error $to ) { foreach ( $from->get_error_codes() as $code ) { foreach ( $from->get_error_messages( $code ) as $error_message ) { $to->add( $code, $error_message ); } foreach ( $from->get_all_error_data( $code ) as $data ) { $to->add_data( $data, $code ); } } } }