函数文档

wp_ajax_health_check_site_status_result()

💡 云策文档标注

概述

该文档描述了 wp_ajax_health_check_site_status_result() 函数,这是一个用于通过 AJAX 处理站点健康检查结果更新的 WordPress 钩子函数。它验证 AJAX 请求和用户权限,并将结果存储为临时数据。

关键要点

  • 函数 wp_ajax_health_check_site_status_result() 是一个 AJAX 处理函数,用于更新站点健康检查的状态结果。
  • 使用 check_ajax_referer() 验证 AJAX 请求的安全性,防止外部请求。
  • 检查当前用户是否具有 'view_site_health_checks' 权限,若无权限则返回 JSON 错误响应。
  • 通过 set_transient() 将 POST 数据中的计数结果编码为 JSON 并存储为临时数据。
  • 成功执行后,使用 wp_send_json_success() 返回 JSON 成功响应。

代码示例

function wp_ajax_health_check_site_status_result() {
	check_ajax_referer( 'health-check-site-status-result' );

	if ( ! current_user_can( 'view_site_health_checks' ) ) {
		wp_send_json_error();
	}

	set_transient( 'health-check-site-status-result', wp_json_encode( $_POST['counts'] ) );

	wp_send_json_success();
}

注意事项

  • 该函数从 WordPress 5.2.0 版本开始引入。
  • 相关函数包括 set_transient()、wp_json_encode()、current_user_can()、check_ajax_referer()、wp_send_json_error() 和 wp_send_json_success(),用于数据存储、编码、权限检查和 AJAX 响应。

📄 原文内容

Handles site health check to update the result status via AJAX.

Source

function wp_ajax_health_check_site_status_result() {
	check_ajax_referer( 'health-check-site-status-result' );

	if ( ! current_user_can( 'view_site_health_checks' ) ) {
		wp_send_json_error();
	}

	set_transient( 'health-check-site-status-result', wp_json_encode( $_POST['counts'] ) );

	wp_send_json_success();
}

Changelog

Version Description
5.2.0 Introduced.