当sku为空时,我尝试使用以下方法将产品名称添加到sku。到目前为止,这是可行的,但最后一件事是,如何在此代码中称呼产品名称?
add_action( 'woocommerce_add_order_item_meta', 'so_28193771', 10, 3 );
function so_28193771( $item_id, $values, $cart_item_key ) {
$item_sku .= get_post_meta( $values[ 'product_id' ], '_sku', true );
if ( empty( $item_sku ) ) {
wc_add_order_item_meta( $item_id, 'sku', $item_sku , false );
}
}
答案 0 :(得分:0)
在函数中使用以下代码。
WooCommerce 3.0 +
从Woocommerce中的订单ID获取产品ID
$order = wc_get_order( $order_id );
$items = $order->get_items();
然后,如果您遍历所有项目,则可以获得所有相关数据:
foreach ( $items as $item ) {
$product_name = $item->get_name();
$product_id = $item->get_product_id();
$product_variation_id = $item->get_variation_id();
}
WooCommerce 3.0之前的版本
$order = new WC_Order( $order_id );
$items = $order->get_items();
foreach ( $items as $item ) {
$product_name = $item['name'];
$product_id = $item['product_id'];
$product_variation_id = $item['variation_id'];
}