为了将我的插件内容连接到任何地方,假设我让主题开发人员创建自己的带有前缀的挂钩(pre_
) 在他们主题的任何地方,我都不知道钩子的其他部分。那么他们会怎么做呢?
假设,在single.php
他们放置了一个钩子,如:
do_action( \'pre_kauwa\' );
在中page.php
他们放置了一个钩子,如:do_action( \'pre_kala\' );
等等。。。我怎样才能得到这些do_action()
带前缀的声明pre_
从活动WordPress安装(活动主题)
or,
从活动的WordPress视口(post、page、archive-bla-bla)
。。。这样,我就可以动态地创建一个钩子列表,其中可以使用add_action()
?
正在测试
英寸wp-includes/plugin.php
我找到了has_filter()
函数声明。从那里开始,我进行了以下测试:$wp_filter = $GLOBALS[\'wp_filter\'];
$has = ! empty( $wp_filter[ $tag ] );
在我的虚拟主题中index.php
之后the_content()
(在循环中)我放置:do_action( \'pre_kk\' );
就在do_action()
我拨打的电话:$t_test = $GLOBALS[\'wp_filter\'];
$hk = \'pre_kk\';
var_dump( $t_test[$hk] );
但它抛出了一个未定义的索引。