手动订单-使用前缀更新每个订单项元标签

时间:2019-05-01 13:17:18

标签: php wordpress woocommerce

信息

WooCommerce版本:3.6.2

WordPress版本:5.1.1


通过Admin创建和保存手动订单时,我尝试将wc-item-meta-label替换为前缀(元密钥标签前缀为 RAQ_


屏幕截图: 在创建订单期间,我将输入 Manual entry

我正在尝试使用each Order Item Meta label的前缀对它进行更新,在保存时 On order creation / save


到目前为止已尝试的代码:

add_action( 'save_post_shop_order', 'add_prefix_order_item_meta_data', 1000);
function add_prefix_order_item_meta_data( $order_id ){
    // Ensure that this is a manual new order 
    if( $created = get_post_meta( $order_id, '_created_via', true ) ) {
        return $order_id;
    }

    // Check the user’s permissions (for 'shop_manager' and 'administrator' user roles)
    if ( ! current_user_can( 'edit_shop_order', $order_id ) ) {
        return $order_id;
    }

   if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )
        return $order_id; // Exit if it's an autosave   

 // Get the WC_Order object
    $order    = wc_get_order($order_id); 

foreach( $order->get_items() as $item_id => $item ){
     $item->update_meta_data( 'RAQ_'. $item_id);
      $order->save(); // Save order data
}
}

但是我无法使其工作并更新前缀RAQ_

欢迎对此提供任何帮助。

0 个答案:

没有答案