函数文档

do_dismiss_core_update()

💡 云策文档标注

概述

do_dismiss_core_update() 是一个用于在 WordPress 后台忽略核心更新的函数。它通过处理 POST 请求中的版本和区域设置参数,查找并标记特定更新为已忽略,然后重定向回更新页面。

关键要点

  • 函数从 $_POST 中获取 'version' 和 'locale' 参数,默认区域设置为 'en_US'。
  • 使用 find_core_update() 查找匹配的核心更新,如果未找到则直接返回。
  • 调用 dismiss_core_update() 来忽略该更新。
  • 通过 wp_redirect() 重定向到带有 nonce 的 update-core.php 页面,确保操作安全。
  • 该函数自 WordPress 2.7.0 版本引入。

代码示例

function do_dismiss_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;
	}
	dismiss_core_update( $update );
	wp_redirect( wp_nonce_url( 'update-core.php?action=upgrade-core', 'upgrade-core' ) );
	exit;
}

注意事项

  • 此函数依赖于 POST 请求,通常由后台管理界面触发,开发者应确保在安全上下文中使用。
  • 重定向时使用了 wp_nonce_url() 来添加 nonce,防止 CSRF 攻击,是 WordPress 安全最佳实践的一部分。
  • 如果未找到更新,函数会静默返回,不会执行任何操作,这有助于避免错误处理。

📄 原文内容

Dismiss a core update.

Source

function do_dismiss_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;
	}
	dismiss_core_update( $update );
	wp_redirect( wp_nonce_url( 'update-core.php?action=upgrade-core', 'upgrade-core' ) );
	exit;
}

Changelog

Version Description
2.7.0 Introduced.