wp-load.php& require_once,在ajax调用中

时间:2013-01-27 20:27:43

标签: ajax wordpress require-once

我正在开发一个WP插件。

目前,我正在使用jquery对我的插件文件夹中的独立php文件进行ajax调用。
我们假设这个文件名为 test.php

在此调用之前未加载文件,因此此文件中没有本机wordpress函数。

因此,我在test.php中有require_once('wp.load');

这里提出了我的问题:

  1. wordpress所需的唯一功能是$ wpdb-> insert。是否有比wp-load更好的功能?一些不包含太多的东西,因为我只需要这个功能!

  2. 我知道require_once只在尚未加载的情况下加载文件。也许我忽略了这种情况,但是这如何与ajax一起工作?如果有“成功”响应,test.php是否关闭,因此当再次调用时,它会再次加载wp-load.php

  3. 谢谢!

2 个答案:

答案 0 :(得分:1)

  

如果有“成功”响应,test.php会关闭,因此当它   再次调用,它再次加载wp-load.php?

完全。 require_once(或include_once)背后的概念是确保您不重新加载相同的函数,类和&变量同时存入同一个当前运行的 PHP代码:

  在可能存在相同文件的情况下,可能会使用

include_once   在特定执行期间不止一次地包含和评估   一个脚本,所以在这种情况下,它可以帮助避免诸如功能之类的问题   重新定义,变量值重新分配等。

由于PHP脚本仅在请求时运行,因此您所描述的就是它将如何发生。

那就是说,我不会过度考虑每次需要时加载整个wp.load的概念。我怀疑它会导致这样的性能损失甚至是显而易见的。

答案 1 :(得分:0)

您应该考虑按照this方法编写一个支持Ajax的插件。通常不需要创建单独的PHP文件并将WordPress核心加载到该文件中。仔细阅读,你会发现,这是相对容易完成的,并且比独立的PHP文件更灵活......