wp_nonce_field() WordPress Function

The wp_nonce_field function is used to create a hidden form field with a unique nonce (number used once) value. This value is used to verify that the form submission came from the current site and not from a malicious third-party.

wp_nonce_field( int|string $action = -1, string $name = '_wpnonce', bool $referer = true, bool $echo = true ) #

Retrieve or display nonce hidden field for forms.


Description

The nonce field is used to validate that the contents of the form came from the location on the current site and not somewhere else. The nonce does not offer absolute protection, but should protect against most cases. It is very important to use nonce field in forms.

The $action and $name are optional, but if you want to have better security, it is strongly suggested to set those two parameters. It is easier to just call the function without any parameters, because validation of the nonce doesn’t require any parameters, but since crackers know what the default is it won’t be difficult for them to find a way around your nonce and cause damage.

The input name will be whatever $name value you gave. The input value will be the nonce creation value.


Top ↑

Parameters

$action

(int|string)(Optional) Action name.

Default value: -1

$name

(string)(Optional) Nonce name.

Default value: '_wpnonce'

$referer

(bool)(Optional) Whether to set the referer field for validation.

Default value: true

$echo

(bool)(Optional) Whether to display or return hidden form field.

Default value: true


Top ↑

Return

(string) Nonce field HTML markup.


Top ↑

Source

File: wp-includes/functions.php

function wp_nonce_field( $action = -1, $name = '_wpnonce', $referer = true, $echo = true ) {
	$name        = esc_attr( $name );
	$nonce_field = '<input type="hidden" id="' . $name . '" name="' . $name . '" value="' . wp_create_nonce( $action ) . '" />';

	if ( $referer ) {
		$nonce_field .= wp_referer_field( false );
	}

	if ( $echo ) {
		echo $nonce_field;
	}

	return $nonce_field;
}


Top ↑

Changelog

Changelog
VersionDescription
2.0.4Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.

Show More
Show More