woocommerce/wordpress钩子究竟是什么时候叫的?



我知道Wordpress和Woocommerce插件中有数百个动作钩子可用,但最让我困惑的是:它们究竟是什么时候被调用的?

对于某些钩子,互联网上有一些可用的信息,但对于其中的许多钩子,我没有看到任何可用的信息。

例如,当我检查某些自定义插件的代码时,我看到以下钩子:

add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
add_action( 'woocommerce_settings_api_form_fields_cod', array( $this, 'extend_cod' ) );
add_action( 'woocommerce_settings_api_sanitized_fields_cod', array( $this, 'clean_up_settings' ) );
add_action( 'woocommerce_delete_shipping_zone', array( $this, 'clean_up_gateway' ) );

我的问题是我在哪里可以获得Woocommerce/Wordpress的所有钩子列表? 在上面的例子中,以"woocommerce_"开头的钩子是标准钩子的一部分,还是特定于插件的自定义钩子? 是否可以创建自定义钩子?

有两种钩子:动作钩子和过滤器钩子。

钩子是通过do_action()apply_filters()函数添加/创建的。

当该do_action()apply_filters()所在的代码运行时,将触发挂钩。

您可以使用add_action()add_filter()将回调函数附加到现有钩子。

  • WordPress钩子:https://developer.wordpress.org/plugins/hooks/
  • 喜喜喳喳:https://docs.woocommerce.com/wc-apidocs/hook-docs.html
  • 所有插件和主题都有自己的钩子。
  • 所以是的,你可以创建自己的自定义钩子。

注意:也有很多未记录的钩子,就像大多数各种复合钩子一样。

<小时 />

相关:

  • WooCommerce 操作钩子和覆盖模板
  • 如何将自定义钩子添加到Woocommerce的自定义插件中
  • Wordpress 和 WooCommerce 中的钩子及其钩子函数执行队列

最新更新