Sembunyikan Pesanan Akaun Saya WooCommerce jika jumlah pembelian ialah 0
P粉545956597
P粉545956597 2023-08-17 21:18:54
0
1
506
<p>Dalam woocommerce, saya cuba menyembunyikan pesanan jika jumlah pesanan ialah 0. Di bawah ialah kod saya tetapi ia tidak berfungsi. Sebarang pemikiran tentang masalah itu? </p> <pre class="brush:php;toolbar:false;">add_filter( 'woocommerce_my_account_my_orders_query', 'hide_zero_total_orders_from_my_account', 10, 1 ); fungsi hide_zero_total_orders_from_my_account( $args ) { $args['meta_query'] = tatasusunan( tatasusunan( 'key' => '_jumlah_pesanan', 'nilai' => 0, 'compare' => '>', 'type' => 'NUMERIC', ), ); pulangkan $args; }</pre> <p><br /></p>
P粉545956597
P粉545956597

membalas semua(1)
P粉037450467

Anda boleh menggunakan pertanyaan SQL yang ringan untuk mendapatkan jumlah pembelian pelanggan dan menggunakan pertanyaan itu untuk menyembunyikan bahagian "Pesanan Akaun Saya" jika jumlah pembelian adalah sama dengan 0 (sifar):

// 获取客户购买总金额
function get_customer_purchases_total_amount(){
    global $wpdb;

    return (float) $$wpdb->get_var( $wpdb->prepare( "
        SELECT SUM(pm.meta_value)
        FROM {$wpdb->prefix}posts as p
        INNER JOIN {$wpdb->prefix}postmeta as pm ON p.ID = pm.post_id
        INNER JOIN {$wpdb->prefix}postmeta as pm2 ON p.ID = pm2.post_id
        WHERE p.post_type = 'shop_order'
        AND p.post_status IN ('wc-processing','wc-completed')
        AND pm.meta_key = '_order_total'
        AND pm2.meta_key = '_customer_user'
        AND pm2.meta_value = %d
    ", get_current_user_id() ) );
}

// 有条件地隐藏“我的账户订单”部分
add_filter( 'woocommerce_account_menu_items', 'hide_customer_account_orders_conditionally', 100, 1 );
function hide_customer_account_orders_conditionally( $items ) {
    if ( get_customer_purchases_total_amount() == 0 ) {
        unset( $items['orders'] );
    }
    return $items;
}

Letakkan kod dalam fail functions.php tema anak anda (atau dalam pemalam). Diuji dan berfungsi dengan baik.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!