首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何包含wp-load.php并同时加载所有插件

如何包含wp-load.php并同时加载所有插件
EN

WordPress Development用户
提问于 2018-12-16 22:05:56
回答 1查看 2.3K关注 0票数 -1

为什么加载wp-load.php‘使用wordpress ajax而不是’

不是

这只用于测试。我有一个只用于本地开发的测试页面,例如我的主题文件夹中的test.php

当我这么做的时候:

代码语言:javascript
复制
global $wpdb;
require_once(__DIR__ . '/../../../wp-load.php');
get_header();
...
get_footer();

我注意到插件钩子没有执行,我所有的脚本和css都没有加载。

有什么我可以做的,所以插件钩子也加载吗?

我也尝试过手动包含插件文件,但不起作用。

例如。

require_once(__DIR__ . '/../../plugins/myplugin-plugin/myplugin-plugin.php');

不能解决这个问题

EN

回答 1

WordPress Development用户

发布于 2018-12-18 02:57:57

请注意,直接为一个关闭的临时文件引导并不是最佳的解决方案,也不是很好的实践,而且往往会带来许多问题。例如,在您的示例中,您可能有可用的WordPress函数,但不会触发主题文件或API。

相反,有更好的方法来做这件事。这并不是无缘无故地被认为是不好的做法。

浏览器中的

(

)

如果您想处理模板,又不想创建页面模板,可以将其放在functions.php中:

代码语言:javascript
复制
add_filter( 'template_include', function($template) {
    return isset($_GET['test']) ? locate_template(['test.php']) : $template ;
}, 99 );

现在,当您访问yoursite.com/?test时,它将在主题中加载test.php模板。

您甚至可以进一步扩展这一点:

代码语言:javascript
复制
add_filter( 'template_include', function($template) {
    return !empty($_GET['test']) ? locate_template(['test/'.$_GET['test'].'.php') : $template ;
}, 99 );

现在,您可以将任何PHP文件放置在主题的test子文件夹中,并通过yoursite.com/?test=foo访问它以加载test/foo.php。更重要的是,您不再需要计算wp-load.php上有多少个文件夹,而且无论如何配置这些文件夹,它都可以在任何WP安装上工作。

只是不要在现场服务器上这样做。

中的CLI

此外,如果安装了WP,则可以运行wp eval test.php从命令行执行此操作。

您还可以运行wp shell以获得加载WP函数的交互式PHP,并且可以运行wp cron test来测试cron作业。

Cron作业中的

,或另一个模板

您可以运行get_template_part('test')从WP中的其他地方加载test.php模板。

您还可以使用wp cron event run --due-now通过实际的Cron作业触发WP cron。没有必要从WordPress文件中引导WordPress以在WordPress中获得可靠的cron。

自动测试中的应用

通常,您不会以这种方式测试模板。适当的测试将创建posts或模拟posts。这通常是通过生成一个测试环境,并使用一个已知内容的数据库进行预填充,并运行测试,在此过程中将数据库恢复到已知的良好示例。

这样做可以使用Behat等工具进行集成测试,这些工具通过生成无头浏览器(如幻影,甚至firefox实例)来运行自动浏览器测试。

或者,对于测试类,您可以使用标准的PHPUnit,并结合使用的WP API的模拟。

请记住,企业站点上的大多数主要产品主题都有某种tests子文件夹,由phpunit或其他CI工具运行。

票数 0
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/323119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档