——————————————-
WordPress のバージョン:5.4.2
Welcart のバージョン:1.9.31
PHP のバージョン:7.4.4
Welcart専用の拡張プラグイン:なし
ご利用のテーマ:Welcart Beldad
症状を確認したブラウザ:Safari、Chrome
サーバー:エックスサーバー
SSLの利用:常時SSL
——————————————–
いつもお世話になっております。
セールなどの際、基本設定で
キャンペーン特典 > 値引きで「0%」にし、
下記のコードをfunction.phpで会員ランクごとに割引率を変更しています。
そのコードは、こちらのフォーラムで参考にさせていただき、正常に動いています。
ただし今回、基本設定の「キャンペーン対象」で設定したカテゴリ以外の商品に対しても同じく値引きされてしまい、とても困っています。
検索してみたところ、
welcustom.net のコメント欄に、キャンペーン対象商品を保持したまま、会員限定のキャンペーンにするようなコードがあったので、参考にしてみたのですが、どうもうまくいきません。
何か良い方法はありませんでしょうか?
ーーーーー
$options=get_option(‘usces’);
if(‘Promotionsale’==$options[‘display_mode’]){
add_filter(‘usces_order_discount’, ‘special_member_order_discount’, 10, 2);
function special_member_order_discount($discount, $cart){
global $usces;
$entry = $usces->cart->get_entry();
$total_items_price = $usces->get_total_price();
$member_status = array( ‘通常会員’, ‘優良会員’, ‘VIP会員’);
if( usces_is_login() ){
if( usces_the_member_status(‘return’) == ‘通常会員’){
$discount = ceil($total_items_price * 0.15 * -1);
} elseif (usces_the_member_status(‘return’) == ‘優良会員’){
$discount = ceil($total_items_price * 0.25 * -1);
} elseif (usces_the_member_status(‘return’) == ‘VIP会員’){
$discount = ceil($total_items_price * 0.35 * -1);
}
}
return $discount;
}
}
ーーーーー