如何在正文标签中添加订单状态class?

How to add order status class to the body tag?

你知道当用户的订单处于待付款状态时,我们如何将 CSS(让我们调用 pending-payment-class)class 添加到 body 标签中状态?

我试过这个但没有成功

add_filter( 'body_class', 'order_class');

function order_class($orderclasses) {

$order = wc_get_order( $order_id );
$order_status  = $order->get_status();

    if( is_page( 30 ))  {
        $orderclasses[] = $order_status;
    }
    return $orderclasses;
}

谢谢。

我用这个修复了它

add_filter( 'body_class', 'order_class');

function order_class( $orderclasses ) {

    // bail if Memberships isn't active
    if ( ! function_exists( 'wc_memberships' ) ) {
                return;
        }
        
    if ( wc_memberships_is_user_active_member( $user_id, 'membership-slug' ) ) {

    $user_id = get_current_user_id(); // The current user ID
    
    // Get the WC_Customer instance Object for the current user
    $customer = new WC_Customer( $user_id );
    
    // Get the last WC_Order Object instance from current customer
    $last_order = $customer->get_last_order();
    
    $order_id     = $last_order->get_id(); // Get the order id
    $order_data   = $last_order->get_data(); // Get the order unprotected data in an array
    $order_status = $last_order->get_status(); // Get the order status
    
    if (is_account_page()) {
        $orderclasses[] = $order_status;
        }
        return $orderclasses;
    }
}

注意:它仅适用于具有 WC 会员资格和最后订单的设置。大家可以根据自己的需要进行修改。