add_settings_error( string $setting, string $code, string $message, string $type = 'error' )

Register a settings error to be displayed to the user.


Description 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 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. Accepts 'error' or 'updated'.

Default value: 'error'


Top ↑

Source Source

File: wp-admin/includes/template.php

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,
	);
}

Top ↑

Changelog Changelog

Changelog
Version Description
3.0.0 Introduced.


Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 1 content
    Contributed by Codex

    Basic Example

    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
        );
    
    }
    

You must log in before being able to contribute a note or feedback.