signup_nonce_check()
云策文档标注
概述
signup_nonce_check() 函数用于处理在 signup_nonce_fields() 中创建的非ce,验证注册表单的安全性。它检查非ce有效性,并在无效时添加错误信息。
关键要点
- 函数接收一个数组参数 $result,并返回处理后的数组。
- 仅在 wp-signup.php 页面执行非ce验证,否则直接返回原结果。
- 使用 wp_verify_nonce() 验证 $_POST['_signup_form'] 非ce,基于 $_POST['signup_form_id'] 生成键名。
- 如果非ce无效,向 $result['errors'] 添加错误消息,使用 __() 进行国际化。
代码示例
function signup_nonce_check( $result ) {
if ( ! strpos( $_SERVER['PHP_SELF'], 'wp-signup.php' ) ) {
return $result;
}
if ( ! wp_verify_nonce( $_POST['_signup_form'], 'signup_form_' . $_POST['signup_form_id'] ) ) {
$result['errors']->add( 'invalid_nonce', __( 'Unable to submit this form, please try again.' ) );
}
return $result;
}注意事项
- 此函数自 MU (3.0.0) 版本引入,是 WordPress 多站点注册流程的一部分。
- 依赖 wp_verify_nonce() 和 __() 函数,确保非ce验证和文本翻译正确。
- 仅在注册表单页面生效,避免在其他场景误用。
原文内容
Processes the signup nonce created in signup_nonce_fields() .
Parameters
$resultarrayrequired
Source
function signup_nonce_check( $result ) {
if ( ! strpos( $_SERVER['PHP_SELF'], 'wp-signup.php' ) ) {
return $result;
}
if ( ! wp_verify_nonce( $_POST['_signup_form'], 'signup_form_' . $_POST['signup_form_id'] ) ) {
$result['errors']->add( 'invalid_nonce', __( 'Unable to submit this form, please try again.' ) );
}
return $result;
}
Changelog
| Version | Description |
|---|---|
| MU (3.0.0) | Introduced. |