do_undismiss_core_update()
云策文档标注
概述
do_undismiss_core_update() 函数用于取消已忽略的 WordPress 核心更新,通过处理 POST 请求中的版本和区域设置参数,调用相关函数执行操作并重定向到更新页面。
关键要点
- 函数从 $_POST 获取 version 和 locale 参数,locale 默认为 'en_US'。
- 使用 find_core_update() 查找对应的核心更新,若未找到则直接返回。
- 调用 undismiss_core_update() 取消忽略更新。
- 通过 wp_redirect() 重定向到带有 nonce 的 upgrade-core 页面,确保安全性。
- 函数在 WordPress 2.7.0 版本中引入。
代码示例
function do_undismiss_core_update() {
$version = isset( $_POST['version'] ) ? $_POST['version'] : false;
$locale = isset( $_POST['locale'] ) ? $_POST['locale'] : 'en_US';
$update = find_core_update( $version, $locale );
if ( ! $update ) {
return;
}
undismiss_core_update( $version, $locale );
wp_redirect( wp_nonce_url( 'update-core.php?action=upgrade-core', 'upgrade-core' ) );
exit;
}注意事项
- 函数依赖于 POST 请求,需确保 version 和 locale 参数正确传递。
- 重定向前使用 wp_nonce_url() 添加 nonce,防止 CSRF 攻击。
- 相关函数包括 find_core_update()、undismiss_core_update()、wp_redirect() 和 wp_nonce_url()。
原文内容
Undismiss a core update.
Source
function do_undismiss_core_update() {
$version = isset( $_POST['version'] ) ? $_POST['version'] : false;
$locale = isset( $_POST['locale'] ) ? $_POST['locale'] : 'en_US';
$update = find_core_update( $version, $locale );
if ( ! $update ) {
return;
}
undismiss_core_update( $version, $locale );
wp_redirect( wp_nonce_url( 'update-core.php?action=upgrade-core', 'upgrade-core' ) );
exit;
}
Changelog
| Version | Description |
|---|---|
| 2.7.0 | Introduced. |