Wordpress Hooks

时间:2009-10-05 04:40:41

标签: php wordpress hook

wordpress如何在内部实现钩子?

2 个答案:

答案 0 :(得分:7)

基本上,它维护一个名为$wp_filter的全局变量来保存相关数据。插件可以使用add_filter()等功能来注册。

在各个点(挂钩点),wordpress检查$wp_filter以查看是否有要运行的过滤器。

最简单的解决方法是查看wp-includes/plugin.php并研究那里的代码(或者连接调试器并逐步执行,或者设置firePHP并定期转储内容)

我不是专家,但我很好奇,所以我偷看了。如果我真的想知道更多,我会做我刚刚建议的。

答案 1 :(得分:0)

如果你有任何事件驱动的编程经验,如.net等..你必须知道事件..考虑这些钩子也是事件......一个插件注册它想要触发一个函数的事件和事件对象记住那个..然后当从WP中的某个地方触发该事件时,它会通过数组找到它需要为该特定事件调用的函数。