减少管理员ajax请求的数量-Wordpress

时间:2019-05-06 10:57:18

标签: php ajax wordpress

我有一个必须针对SEO和Pagespeed进行优化的客户端。该网站是使用分类广告主题-AdForest的wordpress。问题出在哪里。从关闭所有插件到插件等,我都尝试过任何方法,但都无济于事,他不想为支持扩展付费。所以我有一个问题。主题是doind HIGH CPU超载,我们从托管更改为VPS,但并没有解决问题。 我看到,如果有人在主页上,只需加载它而不执行任何操作,将其打开一个小时半,它将加载来自admin-ajax的5000个请求,其中大多数来自custm.js。在主题文件中,我通常在Chrome consoile中播出的行通常很重要,但是我认为无休止地加载reùests是不正确的。它每秒做一次。想象一下,如果一次有15个用户会发生什么。...这是最昂贵的VPS软件包,带有8个GHZ处理器,许多CPU时间,8 Gb RAM等。我想减少请求,例如:每个用户每小时100个请求或类似的请求。有什么办法吗?

1 个答案:

答案 0 :(得分:0)

您可以简单地限制执行频率。您可以使用名为Heartbeat Control.

的插件来完成此操作

一旦安装了插件,然后转到“设置”->“心跳控制设置”,然后从“心跳行为”下拉列表中选择“修改心跳”。如果您使用的是WP Rocket缓存插件,则可以从WP Rocket settings控制心跳。

或者,您可以选择选项“禁用心跳”。这应该完全禁用此功能,它将不再增加服务器上使用的执行次数和CPU时间。请注意,禁用心跳有时会导致某些插件功能无法正常工作。

要禁用心跳,请编辑您的子主题的functions.php文件,并在打开后立即将以下代码段粘贴到下面

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}