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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

基于 WooCommerce 中的購(gòu)物車總數(shù)和用戶角色的漸進(jìn)折扣

基于 WooCommerce 中的購(gòu)物車總數(shù)和用戶角色的漸進(jìn)折扣

PHP
回首憶惘然 2023-07-01 15:33:04
我在 WooCommerce 應(yīng)答代碼中使用基于購(gòu)物車總計(jì)的漸進(jìn)折扣來(lái)進(jìn)行一些 Woocommerce 訂單總折扣(見下文)。但我想根據(jù)用戶角色進(jìn)行折扣,因?yàn)槲业拿總€(gè)客戶角色看到的價(jià)格都不同。我有一些自定義用戶角色:wholesale_prices、wholesale_vat_exc和distributor_prices。我想讓代碼僅適用于wholesale_prices和wholesale_vat_exc用戶角色,但不適用于distributor_prices?(因?yàn)樗麄儾荒芸吹秸劭郏_@是我實(shí)際重新訪問(wèn)的代碼版本:// Order total discountadd_action( 'woocommerce_cart_calculate_fees', 'progressive_discount_based_on_cart_total', 10, 1 );function progressive_discount_based_on_cart_total( $cart_object ) {? ? if ( is_admin() && ! defined( 'DOING_AJAX' ) )? ? ? ? return;? ? $cart_total = $cart_object->cart_contents_total; // Cart total? ? if ( $cart_total >= 3000.00 && $cart_total < 5000.00 )? ? ? ? $percent = 15; // 15%? ? elseif ( $cart_total >= 1500.00 && $cart_total < 3000.00 )? ? ? ? $percent = 10; // 10%? ? elseif ( $cart_total >= 750.00 && $cart_total < 1500.00 )? ? ? ? $percent =? 5; // 5%? ? else? ? ? ? $percent = 0;? ? if ( $percent != 0 ) {? ? ? ? $discount =? $cart_total * $percent / 100;? ? ? ? $cart_object->add_fee( "Bulk Order Discount ($percent%)", -$discount, true );? ? }}如何使此代碼僅對(duì)wholesale_prices用戶wholesale_vat_exc角色可用?
查看完整描述

1 回答

?
德瑪西亞99

TA貢獻(xiàn)1770條經(jīng)驗(yàn) 獲得超3個(gè)贊

如下所示:

add_action( 'woocommerce_cart_calculate_fees', 'progressive_discount_based_on_cart_total', 10, 1 );

function progressive_discount_based_on_cart_total( $cart ) {

? ? // HERE we target other user roles than 'distributor_prices' (allowing guests)

? ? if ( current_user_can('distributor_prices') && is_user_logged_in() )

? ? ? ? return;


? ? if ( is_admin() && ! defined( 'DOING_AJAX' ) )

? ? ? ? return;


? ? $cart_total = $cart->get_cart_contents_total(); // Cart total


? ? if ( $cart_total >= 3000.00 && $cart_total < 5000.00 )

? ? ? ? $percent = 15; // 15%

? ? elseif ( $cart_total >= 1500.00 && $cart_total < 3000.00 )

? ? ? ? $percent = 10; // 10%

? ? elseif ( $cart_total >= 750.00 && $cart_total < 1500.00 )

? ? ? ? $percent =? 5; // 5%

? ? else

? ? ? ? $percent = 0;


? ? if ( $percent > 0 ) {

? ? ? ? $discount? ?= $cart_total * $percent / 100;

? ? ? ? $label_text = sprintf( __("Bulk Order Discount %s"), '('.$percent.'%)' );

? ? ? ? $cart->add_fee( $label_text, -$discount, true );

? ? }

}

代碼位于活動(dòng)子主題(或活動(dòng)主題)的functions.php 文件中。它應(yīng)該有效。


對(duì)于多個(gè)用戶角色,您將使用wp_get_current_user()來(lái)獲取當(dāng)前WP_User對(duì)象,然后您可以獲得roles如下屬性:


$user? ? ? ?= wp_get_current_user();

$user_roles = $user->roles;? // An array of the user roles

然后你將在代碼中替換:


? ? // HERE we target other user roles than 'distributor_prices' (allowing guests)

? ? if ( current_user_can('distributor_prices') && is_user_logged_in() )

? ? ? ? return;

經(jīng)過(guò):


? ? // HERE we target "wholesale_prices" and "wholesale_vat_exc" user roles (allowing guests)

? ? if ( ! array_intersect( wp_get_current_user()->roles, array('wholesale_prices', 'wholesale_vat_exc') && is_user_logged_in() )

? ? ? ? return;

或者


? ? // HERE we target "wholesale_prices" and "wholesale_vat_exc" user roles (allowing guests)

? ? if ( ! ( current_user_can('wholesale_prices') || current_user_can('wholesale_vat_exc') ) && is_user_logged_in() )

? ? ? ? return;


查看完整回答
反對(duì) 回復(fù) 2023-07-01
  • 1 回答
  • 0 關(guān)注
  • 143 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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