WordPress REST API 响应慢如何解决

更新于 2021年12月26日 wordpress教程

我对 WordPress REST API 的速度有疑问。 我想要做的是尽可能快地为一份报告获取大约 26k 条记录的数据,以便为用户提供流畅的用户体验。 我遇到的问题是,当 REST API 被调用时,WordPress 似乎加载了核心、插件和主题。

桌子

我已经用完了我所知道的优化代码的方法,是否有任何人知道可以提高速度的 WordPress 调整? 对于使用 REST API 的人来说,这些结果是否正常? 正如您所看到的,运行我的代码的时间不是问题,而是 WordPress 的开销。

解决方案

概述:所以问题是 WordPress 4.8 版的限制。 WordPress 旨在为每个 REST API 请求加载插件和主题及其所有核心。 这是响应时间缓慢的原因。

解决方案:当前唯一的解决方案是对插件中的文件进行 ajax 调用,并且仅加载 WordPress 核心的一部分。 下面的代码是直接文件访问,同时仍然能够以快速响应时间使用 WordPress 功能。

//Tell WordPress to only load the basics
define('SHORTINIT',1);

//get path of wp-load.php and load it
require_once $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php';

// register global database
global $wpdb;

// return data selected from DB to user

结果:响应时间降至 100 毫秒。 这是1069ms 到 108ms的巨大差异。

最后说明:Wordpress REST API 非常新,功能非常强大,您应该在响应时间不成问题的大多数情况下使用。

如果响应时间对您的应用程序至关重要,并且您不介意花费时间和精力,我建议您创建自己的入口点来检索您需要的数据。

我刚刚找到了这个插件-> https://wordpress.org/plugins/wp-rest-cache/

这是一个非常省时的插件,并在我们的实时网站上进行了测试。

结果:平均响应耗时从1200ms降到50ms

你可能还喜欢下面这些文章

解决升级WordPress时提示:另一更新正在进行解决升级WordPress时提示:另一更新正在进行

解决办法,将下面的代码添加到当前主题函数模板 functions.php 中:global $wpdb;之后,刷新一下网站页面,会自动删除该记录,可以正常升级程序了。

怎么解决 WordPress 后台站点地址后无法登录网站的问题怎么解决 WordPress 后台站点地址后无法登录网站的问题

修改 WordPress 后台站点地址后无法登录网站比较常见的方法是登录phpMyAdmin修改数据库wp-options表中home和siteurl的链接地址。

安全禁用 WP REST API安全禁用 WP REST API

//developer.wordpress.org/rest-api/using-the-rest-api/frequently-asked-questions/#can-i-disable-the-rest-接口据此,Wordpress。

imwpcache如何使用ssi技术在所有页面展示最新文章imwpcache如何使用ssi技术在所有页面展示最新文章

前段时间有个朋友说用了缓存插件之后蜘蛛抓取变少了。当使用缓存之后,所有的页面都是静态的,发了新的文章之后不会在旧的页面的侧边栏展示。为了解决这个问题,imwpcache使用ssi技术来展示最新文章。第一步:缓存后台开始SSI

wordpress智能自动摘要插件:wpaewordpress智能自动摘要插件:wpae

目前wordpress的摘要大多数由主题提供。一直以来没有一款插件可以智能提取正文的关键内容作为摘要,于是自己动手做了一个,命名为wpae(wordpress auto excerpt)。

好看 (0) 很好看 (0) 非常好看 (0)