第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在Woocommerce的自定義訂單狀態(tài)的管理菜單中添加計數(shù)?

如何在Woocommerce的自定義訂單狀態(tài)的管理菜單中添加計數(shù)?

PHP
慕蓋茨4494581 2022-08-05 15:32:26
因此,我添加了一個名為“等待發(fā)貨”的自定義訂單狀態(tài),并且我想將這些訂單包含在管理左側(cè)WooCommerce下拉菜單下顯示的訂單計數(shù)中。此處顯示的唯一訂單是具有“正在處理”狀態(tài)的訂單。有什么幫助嗎,伙計們?提前非常感謝。
查看完整描述

3 回答

?
子衿沉夜

TA貢獻1828條經(jīng)驗 獲得超3個贊

我找到了一個公平的解決方案。這有點笨拙...但它的工作原理


首先,將子菜單添加到WooCommerce菜單:


add_action( 'admin_menu', 'custom_status_menu', 50 );

function custom_status_menu(){

    $status_page = add_submenu_page( 'woocommerce', 'Awaiting Shipment', __( 'Awaiting', 'woocommerce' ), 'manage_woocommerce', 'wc-awaiting', 'awaiting_orders_page' );

}

然后,添加要在單擊此菜單項時運行的函數(shù)。此功能(這里是黑客部分)會將用戶重定向到常規(guī)訂單頁面,僅顯示請求的狀態(tài)。(為了測試我使用了“已取消”狀態(tài),您應(yīng)該更改)


function awaiting_orders_page(){

    header('Location: /wp-admin/edit.php?post_status=wc-cancelled&post_type=shop_order');

}

最后,添加計數(shù)器。同樣在這里,我使用了“等待”狀態(tài),將其更改為您創(chuàng)建的狀態(tài)


add_action( 'admin_head', 'add_custom_status_count');

function add_custom_status_count(){

    global $submenu;

    $order_count = wc_orders_count( 'awaiting' );

    foreach ( $submenu['woocommerce'] as $key => $menu_item ) {

        if ( 0 === strpos( $menu_item[0], 'Awaiting' ) ) {

            $submenu['woocommerce'][ $key ][0] .= ' <span class="awaiting-mod update-plugins count-' . esc_attr( $order_count ) . '"><span class="processing-count">' . number_format_i18n( $order_count ) . '</span></span>'; // WPCS: override ok.

            break;

        }

    }

}


查看完整回答
反對 回復(fù) 2022-08-05
?
婷婷同學(xué)_

TA貢獻1844條經(jīng)驗 獲得超8個贊

這是解決方案


function add_order_status_count(){

    global $submenu;

    $order_count = wc_orders_count( 'awaiting-shippment' );

    foreach ( $submenu['woocommerce'] as $key => $menu_item ) {

        if ( 0 === strpos( $menu_item[0], 'Orders' ) ) {

            $submenu['woocommerce'][ $key ][0] .= ' <span class="awaiting-mod update-plugins count-' . esc_attr( $order_count ) . '"><span class="processing-count">' . number_format_i18n( $order_count ) . '</span></span>'; // WPCS: override ok.

            break;

        }

    }

}

add_action( 'admin_head', 'add_order_status_count');

如果您想禁用Woocommerce處理訂單狀態(tài)計數(shù)


function remove_processing_order_count() {

    return false;

}

add_filter( 'woocommerce_include_processing_order_count_in_menu', 'remove_processing_order_count' );


查看完整回答
反對 回復(fù) 2022-08-05
?
慕標(biāo)5832272

TA貢獻1966條經(jīng)驗 獲得超4個贊

如果你想完全替換默認計數(shù)器,下面的代碼段應(yīng)該符合你的需求:


<?php

add_action( 'admin_head', 'usrlnd_action_change_order_counter' ), 999 );

function usrlnd_action_change_order_counter() {

    global $submenu;


    if ( isset( $submenu['woocommerce'] ) ) {

        // Add count if user has access.

        if ( apply_filters( 'woocommerce_include_processing_order_count_in_menu', true ) && current_user_can( 'manage_woocommerce' ) ) {

            // my custom status slug is `new`

            $order_count     = wc_orders_count( 'new' );

            $old_order_count = wc_processing_order_count();


            if ( $order_count ) {

                foreach ( $submenu['woocommerce'] as $key => $menu_item ) {

                    if ( 0 === strpos( $menu_item[0], _x( 'Orders', 'Admin menu name', 'woocommerce' ) ) ) {

                        $old  = ' <span class="awaiting-mod update-plugins count-' . esc_attr( $old_order_count ) . '"><span class="processing-count">' . number_format_i18n( $old_order_count ) . '</span></span>';

                        $new  = ' <span class="awaiting-mod update-plugins count-' . esc_attr( $order_count ) . '"><span class="processing-count">' . number_format_i18n( $order_count ) . '</span></span>';

                        $item = $submenu['woocommerce'][ $key ][0];

                        if ( strpos( $item, $old ) !== false ) {

                            // replace old counter with new

                            $item = str_replace( $old, $new, $item );

                        } else {

                            // there is no counter, just add the new

                            $item .= $new;

                        }


                        $submenu['woocommerce'][ $key ][0] = $item;

                        break;

                    }

                }

            }

        }

    }

}

使用Woocommerce 4.2.2進行測試。


查看完整回答
反對 回復(fù) 2022-08-05
  • 3 回答
  • 0 關(guān)注
  • 229 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號