2

我需要知道除了 /wp-includes/plugin.php 之外,除了 /wp-includes/plugin.php 之外,还有其他路径到文件的其他路径吗?

4

2 回答 2

7

动作和钩子没有被存储,这就是它们的全部美。您使用 注册一个新动作add_action(),将一个函数添加到将使用声明的动作执行的函数列表中。然后,在任何你想要的地方执行动作do_action(),甚至在多个地方。这样,可以在任何地方将功能添加到操作中,并且可以在任何地方执行操作......也就是说,您实际上可能正在寻找 WordPress 的某些操作确实在哪里执行,以了解为什么会发生某些事情,并对其进行调查,并可能通过添加另一个功能(与另一个add_action宣言)。也许这就是您正在做的事情,但是如果您需要帮助,则必须更加明确。无论如何,在这种情况下,只需在您的 WordPress 文件夹中搜索“do_action”,甚至可能是“do_action('name_of_the_action_if_you_know_it”...

于 2012-11-18T19:55:15.510 回答
1

它们存储在全局 $wp_filter 变量中。

此变量是 WP_HOOK 对象的数组。WP_HOOK 类在 wp-includes/class-wp-hook.php 中定义。

此类具有 this->apply_filters 方法,该方法在调用 do_action() 时执行 add_action() 中的函数。

该函数通过 call_user_func_array() php 函数执行。

于 2018-12-07T17:10:50.553 回答