You can retrieve all of the message of the same code
with the get_error_messages()
method (hacked from some code in the Codex):
function doer_of_stuff() {
$err = new WP_Error( 'broke', "I've fallen and can't get up 1");
$err->add('broke', "I've fallen and can't get up 2");
$err->add('borken', "not this one");
$err->add('borken', "not this one");
$err->add('broke', "I've fallen and can't get up 3");
return $err;
}
$return = doer_of_stuff();
if( is_wp_error( $return ) ) {
// var_dump($return);
var_dump($return->get_error_messages('broke'));
}
I think that is what you want to do.
To get other messages just repeat the code: $return->get_error_messages('broke')
.
get_error_messages()
with no argument will dump all of the messages:
if( is_wp_error( $return ) ) {
// var_dump($return);
var_dump($return->get_error_codes());
var_dump($return->get_error_messages());
}
Or just use the errors
class variable itself:
$return = doer_of_stuff();
if( is_wp_error( $return ) ) {
var_dump($return->errors);
}
The data is already “grouped”