add_settings_error( string $setting, string $code, string $message, string $type = 'error' )
Registers a settings error to be displayed to the user.
Description
Part of the Settings API. Use this to show messages to users about settings validation problems, missing settings or anything else.
Settings errors should be added inside the $sanitize_callback function defined in register_setting() for a given setting to give feedback about the submission.
By default messages will show immediately after the submission that generated the error.
Additional calls to settings_errors() can be used to show errors even when the settings page is first accessed.
Parameters
-
$setting
string Required -
Slug title of the setting to which this error applies.
-
$code
string Required -
Slug-name to identify the error. Used as part of
'id'
attribute in HTML output. -
$message
string Required -
The formatted message text to display to the user (will be shown inside styled
<div>
and<p>
tags). -
$type
string Optional -
Message type, controls HTML class. Possible values include
'error'
,'success'
,'warning'
,'info'
. Default'error'
.Default:
'error'
Source
File: wp-admin/includes/template.php
.
View all references
function add_settings_error( $setting, $code, $message, $type = 'error' ) {
global $wp_settings_errors;
$wp_settings_errors[] = array(
'setting' => $setting,
'code' => $code,
'message' => $message,
'type' => $type,
);
}
Changelog
Version | Description |
---|---|
5.3.0 | Added warning and info as possible values for $type . |
3.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
Basic Example
Top ↑
Feedback
You must return the $data otherwise it won’t show in the field. [PHP] function change( $data ) { $message = null; $type = null; if ( null != $data ) { if ( false === get_option( ‘myOption’ ) ) { add_option( ‘myOption’, $data ); $type = ‘updated’; $message = __( ‘Successfully saved’, ‘my-text-domain’ ); } else { update_option( ‘myOption’, $data ); $type = ‘updated’; $message = __( ‘Successfully updated’, ‘my-text-domain’ ); } } else { $type = ‘error’; $message = __( ‘Data can not be empty’, ‘my-text-domain’ ); } add_settings_error( ‘myUniqueIdentifyer’, esc_attr( ‘settings_updated’ ), $message, $type ); return $data; } [/php] — By I am Programmer —
You must return the $data otherwise it won’t show in the field. — By I am Programmer —