wp_nonce_field

函数
wp_nonce_field ( $action = -1, $name = '_wpnonce', $referer = true, $echo = true )
参数
  • (int|string) $action Optional. Action name. Default -1.
    Required:
    Default: -1
  • (string) $name Optional. Nonce name. Default '_wpnonce'.
    Required:
    Default: '_wpnonce'
  • (bool) $referer Optional. Whether to set the referer field for validation. Default true.
    Required:
    Default: true
  • (bool) $echo Optional. Whether to display or return hidden form field. Default true.
    Required:
    Default: true
返回值
  • (string) Nonce field HTML markup.
定义位置
相关方法
signup_nonce_fieldswp_nonce_urlwp_nonce_tickwp_nonce_ayswp_referer_field
引入
2.0.4
弃用
-

wp_nonce_field: 该函数用于生成一个唯一的nonce字段,可用于防止未经授权访问敏感页面或操作。nonce是一个随机值,在每次页面加载时都会发生变化,在执行操作时由WordPress检查,以确保它是有效的。

检索或显示表单的nonce隐藏字段。

nonce字段用于验证表单的内容来自于当前网站的位置而不是其他地方。nonce并不提供绝对的保护,但应该可以防止大多数情况。在表单中使用nonce字段是非常重要的。

$action和$name是可选的,但如果你想有更好的安全性,强烈建议设置这两个参数。在没有任何参数的情况下直接调用函数比较容易,因为nonce的验证不需要任何参数,但由于破解者知道默认值是什么,他们不难找到绕过你的nonce的方法并造成破坏。

输入名称将是你给的任何$name值。输入值将是nonce的创建值。

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

常见问题

FAQs
查看更多 >