猿问

在 woocommerce 管理列表状态和用户方面显示顺序

在 woocommerce 管理端的订单列表中,我想按状态显示订单。

我的意思是说,如果订单处于处理状态,则该订单应显示在管理订单列表中,而其他订单不应显示在该列表中。检查图像以了解我需要的更多详细信息..在此处输入图像描述


慕的地6264312
浏览 93回答 1
1回答

翻过高山走不出你

我猜你正在寻找这样的东西?/** * Limit statuses dropdown for custom user role. * * @param array $statuses * @see wc_get_order_statuses() */add_filter( 'wc_order_statuses', function( $statuses ) {    # Custom user role (registered elsewhere).    $custom_user_role = 'administrator';        # Status(es) of orders to show to custom user role.    $limit_to_order_statuses = array(        'wc-processing' => 1,        'wc-on-hold' => 1,    );        # Make sure we're editing right query.    # If not, then nothing to change ("return early").    if (        !function_exists( 'get_current_screen' )        ||  'shop_order' !== get_current_screen()->post_type        || 'woocommerce' !== get_current_screen()->parent_base    )        return $statuses;        # Check if user has the specified custom user role.    # If they don't, then nothing to change ("return early").    if ( !in_array( $custom_user_role, wp_get_current_user()->roles ) )        return $statuses;        return array_intersect_key( $statuses, $limit_to_order_statuses );} );
随时随地看视频慕课网APP
我要回答