当前位置:首页 > 网络科技 > WordPress JSON数据处理函数

WordPress JSON数据处理函数

1年前 (2024-08-26)admin网络科技124

在 WordPress 开发中难免遇到数据接口的对接和开发适配,而子凡作为 WordPress 的深度爱好者来说更是习惯使用 WordPress 系统封装的函数,所以但就 json 数据来说,WordPress 就定义了一堆的函数,由于最近在升级一些之前的 json 数据接口,所以顺便就来记录一下 WordPress json 数据处理函数及使用。

wp_json_encode

1
wp_json_encode( mixed $data, int $options, int $depth = 512 )

php json_encode 的升级版本,将变量编码为 JSON,并进行一些完整性检查。WordPress 5.3.0 不再处理对 PHP < 5.6 的支持。 wp_json_encode 函数默认也是通过 json_encode 编码,如果不成功则会使用 _wp_json_sanity_check 对数据做完整性处理,然后再用 json_encode 编码。所以使用 wp_json_encode 进行 json 数据编码可靠性更高。 如果想要提高中文的可读性,防止 json 编码把中文转换成 unicode,所以可以设置$options 参数为 JSON_UNESCAPED_UNICODE,这样中文就不会被转码,就能被直接识别。

wp_send_json

1
wp_send_json( mixed $response, int $status_code = null, int $options )

直接发送通过 wp_json_encode 编码的数据。使用 wp_send_json() 后不需要包含 wp_die() 或 exit(0),因为它会自动调用 wp_die()。

wp_send_json_success / wp_send_json_error

1
2
wp_send_json_success( mixed $data = null, int $status_code = null, int $options )
wp_send_json_error( mixed $data = null, int $status_code = null, int $options )

wp_send_json_success 响应对象将始终具有 success 值为 的键 true。如果有任何东西传递给函数,它将被编码为 data 键的值。

wp_send_json_error 响应对象将始终具有 success 值为 的键 false。如果在参数中将任何内容传递给函数$data,它将被编码为 data 键的值。wp_send_json_error 会判断 $data 数据是否为 WP_Error 实例,如果是则输出 code 和 message 的数组。

wp_is_json_request

检查当前请求是 JSON 请求,或者返回 JSON 结果,这个函数没有参数,直接使用:wp_is_json_request()。如果 Accepts 或 Content-Type 标头包含 application/json 则为真,否则为假。

wp_is_jsonp_request

检查当前请求是 JSONP 请求,或者返回 JSONP 结果,这个函数没有参数,直接使用:wp_is_jsonp_request()。它首先判断 $_GET[‘_jsonp’] ,是否存在,然后通过函数 wp_check_jsonp_callback 判断它的值是否合法。

wp_check_jsonp_callback

1
wp_check_jsonp_callback( string $callback )

检查 JSONP 回调是否是有效的 JavaScript 回调名称。回调函数名称中只允许字母数字字符和点字符。这有助于缓解直接输出用户输入引起的 XSS 攻击。

更多关于WordPress优化及疑问可以添加留言

w.haolusi.com

本文链接:https://w.haolusi.com/wordpress-json.html

扫描二维码推送至手机访问。

版权声明:本文由豪鲁斯兴趣网发布,如需转载请注明出处。

本文链接:https://w.haolusi.com/?id=1763

标签: WordPress优化
分享给朋友:

“WordPress JSON数据处理函数” 的相关文章

Essential Strategies for Enhancing Cybersecurity in the Digital Age

Essential Strategies for Enhancing Cybersecurity in the Digital Age

With the rapid development of Information Technology, Cybersecurity has become an essential issue in modern Society. Cybersecurity...

In terms of equipment acquisition, what improvements can be made?

In terms of equipment acquisition, what improvements can be made?

In terms of equipment acquisition in World of Warcraft, Players often discuss some areas that can be improved to enhance the gaming experien...

告别焦虑,技术人的“慢功夫”哲学

告别焦虑,技术人的“慢功夫”哲学

我们现在处一个快节奏的时代,每一个行业都在高速发展,我们也常常被告知要抓住每一个机会,快速成长,迅速成功。但对许多技术人来说,所谓的“快”,有时反而会让我们失去平衡,陷入焦虑和迷茫, 常常又进入事倍功半的困境。之前遇到过一位刚入行不久的年轻技术人,他一脸焦虑地问我:“如果我现在不快点提高,是不是以后...

WordPress如何将管理员用户主页改为网站首页

WordPress如何将管理员用户主页改为网站首页

最近在做 WordPress 站群的一些项目测试,主题在调用作者的时候就会链接到作者主页,加上很多时候 WordPress 网站就只会使用一个账户来发布文章,虽然可以通过修改主题代码的方式将作者的链接直接链接到网站首页,但是作为一个优雅的 WordPress 开发者来说,肯定是不会轻易动主题源码的,...

WordPress标签实现追加自定义链接

WordPress标签实现追加自定义链接

WordPress 标签的用处说多不多,说少不少,其中利用 WordPress 标签做聚合页面优化是一种搜索引擎很喜欢的方式,或者说很多搜索引擎相比正文页面而言更喜欢抓取和收录标签页面,其次对于 WordPress 标签的作用就是用于文章关键词调用以及文章内链。那么今天子凡我我将利用几行代码来实现给...

百度正式下线“快速收录”功能,VIP可以申请“快速抓取”权限

百度正式下线“快速收录”功能,VIP可以申请“快速抓取”权限

最近可以说是站长们一片哀嚎,清明节前刚经历一次大的波动恢复没两天,让后百度又一次性的在清明节再次送走了,目前又开始缓慢的在恢复,但是似乎情况也并不是很妙。就在这时,百度搜索资源平台发布了一则“关于升级平台「快速收录」工具的通知”的公告,意思就是正式下线快速收录功能,换新上线一个叫做“快速抓取”的工具...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。