【问题标题】:WooCommerce pass order data into woocommerce_checkout_update_user_metaWooCommerce 将订单数据传递到 woocommerce_checkout_update_user_meta
【发布时间】:2014-04-08 13:58:33
【问题描述】:

我正在尝试在 WooCommerce 中结帐时添加 user_meta。目前我正在使用 woocommerce_checkout_update_user_meta 操作来更新用户元数据。我也想传递一些订单数据本身,特别是我想让订单 id 像这样的元值......

function woocommerce_add_my_user_meta( $user_id ) {
   global $woocommerce;
   update_user_meta( $user_id, 'purchased', ''.$order->ID.'' );
}
add_action('woocommerce_checkout_update_user_meta', 'woocommerce_add_my_user_meta');

但是这不起作用。它只是添加一个空白的购买用户元。 非常感谢任何帮助。

【问题讨论】:

    标签: wordpress action hook woocommerce


    【解决方案1】:

    您可以使用woocommerce_checkout_update_order_meta 挂钩

    // Use hook after checkout
    add_action( 'woocommerce_checkout_update_order_meta', 'do-additional-stuff-on-checkout', 10, 2 );
    // Things you want to be done when hook is called
    function do-additional-stuff-on-checkout( $order_id, $post_values ) {
        // get user
        $current_user = wp_get_current_user();
        // update
        update_user_meta( $current_user->ID, 'purchased', $order_id );
    }
    

    【讨论】:

    • 目前此方法不传递 $post_values - 仅传递 $order_id 参数。但可以使用$_POST 访问它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-25
    • 1970-01-01
    • 2020-07-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    相关资源
    最近更新 更多