【问题标题】:How to pass product information to woocommerce plugin?如何将产品信息传递给 woocommerce 插件?
【发布时间】:2017-10-26 00:18:49
【问题描述】:

我尝试开发一个 woocommerce 插件。我需要更改产品价格和产品可用性

我正在使用 woocommerce_before_single_product 挂钩,但我不明白挂钩如何将 id 产品传递给我的函数。

这是我的代码

add_action('woocommerce_before_single_product', 'call_ws_for_as400', 10 , 1);

function call_ws_for_as400() {

    $product = wc_get_product( $context['post'] -> ID );

    $id = $product->id;

    error_log($product);

    error_log($id);
}

product 和 id 总是为空,为什么?

【问题讨论】:

  • 因为$context['post'] -> ID 没有在任何地方定义。请参阅下面的解决方案。

标签: php wordpress woocommerce hook-woocommerce


【解决方案1】:

没有参数传递给woocommerce_before_single_product钩子:

do_action( 'woocommerce_before_single_product' );

所以你需要使用全局$product

add_action('woocommerce_before_single_product', 'call_ws_for_as400');

function call_ws_for_as400() {
    global $product;
    $id = $product->get_id();
    error_log($product);
    error_log($id);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2018-10-17
    • 1970-01-01
    • 2016-03-04
    • 1970-01-01
    相关资源
    最近更新 更多