有没有人知道核心挂钩的可视细目以及它们何时被发射?

时间:2016-12-15 作者:MrMesees

标题真的说明了这一切。我想知道触发动作的时间和WordPress调用过滤器的时间,最好是视觉上的,尽管我想下载、更改core以便在注册动作或过滤器时记录到文件中,然后再次触发并处理其输出。

如果以前有人想象过的话,这基本上会让我的生活更轻松。

2 个回复
最合适的回答,由SO网友:MrMesees 整理而成

我完全忘记了这一点,直到我刚刚查看了我的个人资料。我制作了一个插件,允许我在调试复杂问题和分析内容的同时记录执行顺序。

https://github.com/WordPress-Thinstall/working-files/blob/5ee79d55552fd2ecf58778783495e3c262bb6c83/plugins/wp-save-hooks-sql.php

它需要PHP7(或者更准确地说,它是在7、7.1、7.2上测试的),并且“所有”特殊标签由https://www.reddit.com/user/konradkar 在reddit上。

需要注意的是,这可能需要大量RAM才能执行,并且可能会减慢响应速度,因此不应在生产中使用,但原始数据将帮助您了解request\\u uri,给定特定输入(日志post和get data),在给定时间触发了哪些挂钩,以及以什么顺序、函数参数等。

我发现搜索SQL日志表给了我足够的数据,可以完全可视化每个请求发生的情况和时间。

SO网友:Milo

The Action Reference in Codex 有一个大致按时间顺序排列的在前端和管理请求期间调用的操作列表,尽管它没有什么比一个简单的列表更奇特的了。

过滤器有点复杂,因为它们主要处理输出,所以它将特定于您拥有的主题和插件,以及它们在不同类型的请求中所做的操作。

您可以在调用所有操作和筛选器时进行日志记录,而无需使用all 措施:

function wpd_log_all_filters(){
    var_dump( current_filter() );
}
add_action( \'all\', \'wpd_log_all_filters\' );
这将激发actions和filter,actions是引擎盖下的一种简单过滤器。

相关推荐

运行wp core安装时,wp-cli静默失败,错误为255

在Docker容器(circleci/php:最新)中工作,我有点难以使用wp cli。当我尝试跑步时wp core install 我收到一个带有255个退出代码的无声故障。我启用了--debug,希望获得更多信息,但不幸的是,我只能看到它在读取wp config后停止。php。circleci@142b5627c098:~/wordpress$ wp core install --url=example.com --title=\"Example\" --admin_user=admin --admi