Woocommerce 检查钩子是否来自API

Woocommerce 检查钩子是否来自API,woocommerce,hook,Woocommerce,Hook,我有这样一个问题: 我在WooCommerce中有一个自定义字段,它是一个标志,表示文章是否被转移/更新到另一个系统 该字段/标志可以在Woocommerce中通过手动编辑文章进行设置,也可以由其他系统通过REST API进行设置 如果我手动编辑字段,我会使用此代码将其设置为“否”: add_action( 'woocommerce_update_product', 'lg_set_transferd_flag', 10, 1 ); function lg_set_transferd_flag(

我有这样一个问题:

我在WooCommerce中有一个自定义字段,它是一个标志,表示文章是否被转移/更新到另一个系统

该字段/标志可以在Woocommerce中通过手动编辑文章进行设置,也可以由其他系统通过REST API进行设置

如果我手动编辑字段,我会使用此代码将其设置为“否”:

add_action( 'woocommerce_update_product', 'lg_set_transferd_flag', 10, 1 );
function lg_set_transferd_flag( $product_id ) {
         update_post_meta( $product_id, 'product_transferd_to_visma', 'no' );
}
要从其他系统中的操作设置它,我使用以下代码:

add_action( 'woocommerce_api_edit_product', 'lg_set_transferd_flag_from_api', 10, 1);
function lg_set_transferd_flag_from_api( $product_id ) {
      update_post_meta( $product_id, 'product_transferd_to_visma', 'yes' );
} 
问题是“woocommerce\u api\u edit\u product”钩子触发了“woocommerce\u update\u product”,因此我在做任何事情时都会使用“no”标志

是否有一种方法可以在钩子“woocommerce\u update\u product”上运行,从而知道该操作来自“woocommerce\u api\u edit\u product”