Отображение использованных купонов в списке административных заказов WooCommerce

Код ниже для распечатки купона на странице заказа

add_filter( 'manage_edit-shop_order_columns', 'custom_shop_order_column', 20 );
function custom_shop_order_column($columns)
{
    $reordered_columns = array();

    
    foreach( $columns as $key => $column){
        $reordered_columns[$key] = $column;
        if( $key ==  'order_status' ){
            
            $reordered_columns['Coupons'] = __( 'Coupons','theme_domain');
        }
    }
    return $reordered_columns;
}

Как я могу распечатать текущую стоимость купона для каждого заказа пользователя?


person MANISH KANVADIYA    schedule 31.12.2020    source источник


Ответы (1)


Используйте следующее, чтобы отобразить использованные коды купонов в настраиваемом столбце списка заказов администратора:

// Additional custom column
add_filter( 'manage_edit-shop_order_columns', 'custom_shop_order_column', 20 );
function custom_shop_order_column( $columns ) {
    $reordered_columns = array();

    foreach( $columns as $key => $column){
        $reordered_columns[$key] = $column;
        if( $key ==  'order_status' ){
            $reordered_columns['coupons'] = __( 'Coupons', 'woocommerce');
        }
    }
    return $reordered_columns;
}

// Custom column content
add_action( 'manage_shop_order_posts_custom_column', 'custom_shop_order_column_used_coupons' );
function custom_shop_order_column_used_coupons( $column ) {
    global $post, $the_order;

    if ( ! is_a( $the_order, 'WC_Order' ) ) {
        $the_order = wc_get_order( $post->ID );
    }

    if ( 'coupons' === $column ) {
        $coupon_codes = $the_order->get_coupon_codes();
        
        if ( ! empty($coupon_codes) ) {
            echo implode(', ', $coupon_codes);
        }
    }
}

Код находится в файле functions.php активной дочерней темы (или активной темы).

По теме: Получение данных купонов из заказов WooCommerce

person LoicTheAztec    schedule 31.12.2020
comment
Большое спасибо, Лоик, за вашу поддержку - person MANISH KANVADIYA; 31.12.2020