我们已经为Woocommerce付款集成开发了一个自定义插件,我们需要在我们的插件文件中添加woocommerce挂钩,而不要在主题文件夹的function.php
中添加它。
如何将自定义钩子添加到我们可以从function.php文件调用的插件中?有什么解决方法吗?
(当我们在wordpress主题的function.php文件中添加自定义woocommerce钩子和操作代码,然后代码工作正常,但我们在自定义插件文件中需要它。)
任何帮助将不胜感激。
答案 0 :(得分:2)
动作挂钩就像是某些代码中的大门或门,允许您在特定的代码位置运行一些自定义代码。当处理该门或大门的代码运行时,它将被执行或“触发”。 这是基于事件的。
过滤器挂钩与动作挂钩有些不同。它们不用于触发某些自定义代码(不是基于事件的)。它们允许更改或操纵一些现有的代码值,例如字符串,数组,对象……因此,过滤器钩子总是处在最小值一个参数的情况下,并且会始终返回该操纵的参数 >。
1)用于动作挂钩: do_action() WordPress功能
do_action('woocommerce_my_custom_action', $some_variable, $another_variable );
2)用于过滤器挂钩: apply_filters() Wordpress函数(其中$value
是操纵参数)
$value = apply_filters('woocommerce_my_custom_action', $value, $some_variable, $another_variable );
Internet上有很多有关钩子的文档,教程和资源
what is difference between action hook and filter hook in wordpress?
答案 1 :(得分:1)
您的插件应该在其自己的php文件中具有其自己的功能,听起来好像您正在将代码粘贴到主题的function.php文件中?当主题更新时,它会被覆盖吗?这是你在做什么吗?
请阅读wordpress插件开发文档。 https://developer.wordpress.org/plugins/intro/
如果您的插件需要其他插件,则有几种方法可以使用户首先激活其他插件: https://wordpress.stackexchange.com/questions/127818/how-to-make-a-plugin-require-another-plugin