Noe*_*res 5 php wordpress cart woocommerce hook-woocommerce
在woocommerce中,我需要获得购物车中每个产品的用户ID,该用户ID不是来自客户,而是创建和发布当前购物车中产品的用户(作者发帖)。
我有以下代码:WooCommerce在插件中付款之前获取订单产品详细信息
共享的代码:@LoicTheAztec
foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ){
$product_id = $cart_item['product_id']; // Product ID
$product_obj = wc_get_product($product_id); // Product Object
$product_qty = $cart_item['quantity']; // Product quantity
$product_price = $cart_item['data']->price; // Product price
$product_total_stock = $cart_item['data']->total_stock; // Product stock
$product_type = $cart_item['data']->product_type; // Product type
$product_name = $cart_item['data']->post->post_title; // Product Title (Name)
$product_slug = $cart_item['data']->post->post_name; // Product Slug
$product_description = $cart_item['data']->post->post_content; // Product description
$product_excerpt = $cart_item['data']->post->post_excerpt; // Product short description
$product_post_type = $cart_item['data']->post->post_type; // Product post type
$cart_line_total = $cart_item['line_total']; // Cart item line total
$cart_line_tax = $cart_item['line_tax']; // Cart item line tax total
$cart_line_subtotal = $cart_item['line_subtotal']; // Cart item line subtotal
$cart_line_subtotal_tax = $cart_item['line_subtotal_tax']; // Cart item line tax subtotal
// variable products
$variation_id = $cart_item['variation_id']; // Product Variation ID
if($variation_id != 0){
$product_variation_obj = wc_get_product($variation_id); // Product variation Object
$variation_array = $cart_item['variation']; // variation attributes + values
}
}
Run Code Online (Sandbox Code Playgroud)
完美,但我还需要获取帖子作者ID
任何帮助表示赞赏。
尝试以下操作,从产品(购物车项目)中获取帖子作者:
// For all Woocommerce versions
foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ){
$post_obj = get_post( $cart_item['product_id'] ); // The WP_Post object
$post_author = $post_obj->post_author; // <=== The post author ID
}
Run Code Online (Sandbox Code Playgroud)
我对您问题中的链接答案进行了更新(因为它与 Woocommerce 版本 3+ 不兼容)
对于版本 3 之前的 Woocommerce(例如 2.6.x),您可以使用:
foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ){
$authror_id = $cart_item['data']->post->post_author; // <=== The post author ID
}
Run Code Online (Sandbox Code Playgroud)