为什么使用wp_end_json()而不是ECHO json_encode()呢?

时间:2014-06-10 作者:henrywright

当向AJAX请求发送JSON响应时,为什么要使用WordPress函数wp_send_json() 而不是echo json_encode()? 使用WordPress功能的好处是什么wp_send_json() 结束echo json_encode()?

参考号:wp_send_json

1 个回复
最合适的回答,由SO网友:engelen 整理而成

wp_send_json() 处理AJAX调用中返回内容的所有部分。首先,它将返回内容的内容类型设置为application/json 具有适当的字符集。其次,它会自动调用wp_die() 在发送JSON结果之后,这是WordPress中AJAX调用所必需的。

您可以考虑使用wp_send_json_success() 对于成功的请求和wp_send_json_error() 错误的请求,从而遵守处理AJAX请求的WordPress标准。这些函数设置success (布尔)和data (任何类型)在数组中输入密钥并对整个数组进行编码,从而允许您以结构化的方式轻松检查请求是否成功或是否出错。

结束

相关推荐

AJAX调用中的当前POST始终为零

我有一个名为event的自定义帖子类型和一个加载更多时间线的按钮。我需要根据WP\\U查询对象的当前帖子,将当前时间线项目向左或向右排列。例如:if (current_post % 2 == 0) { go to the left } else { go to the right } 对于加载到页面load上的前3个时间线项目,位置是正确的,但每当我调用AJAX时,当前的\\u post是0。以下是我的疑问:$args = array(