仅当订单状态设置为“已完成”时,我才想使用键 _alg_wc_cog_order_profit 计算所有元值的总和。我为此创建了一个简码,但它没有返回正确的值,而是返回 0。但是,如果我将 get_the_ID() 替换为特定的帖子 ID,例如 56 或 11,它确实会返回正确的值。请指导我在哪里犯了错误。 add_shortcode('user_on_hold_cogs', 'get_user_orders_on_hold_totalb');function get_user_orders_on_hold_totalb() { $total_amount = 0; // Initializing // Get current user if( $user = wp_get_current_user() ){ // Get 'on-hold' customer ORDERS $on_hold_orders = wc_get_orders( array( 'limit' => -1, //'customer_id' => $user->ID, 'status' => 'completed', ) ); foreach( $on_hold_orders as $order) { $stockk = (float) get_post_meta( get_the_ID() , '_alg_wc_cog_order_profit', true ); //$total_amount += $order->get_total(); $total_amount += $stockk ; } } return $total_amount;}
1 回答
喵喵时光机
TA贡献1846条经验 获得超7个赞
快速检查一下,您可能无法通过使用get_the_ID()
此处获得订单 ID [假设您正在尝试访问订单 ID。]
尝试替换get_the_ID()
为$order->get_id()
您的代码将变为
$stockk = (float) get_post_meta( $order->get_id(), '_alg_wc_cog_order_profit', true );
如果上面的代码不起作用,请告诉我。
- 1 回答
- 0 关注
- 87 浏览
添加回答
举报
0/150
提交
取消