我正在使用WooCommerce 会员插件在产品页面上显示会员折扣。现在我想显示您可以通过非会员会员获得的折扣。
这是我不是会员时看到的:
这是我成为会员时看到的:
这是我不是会员时想看到的:
我很惊讶这个问题在网上被问了多少次,仍然没有答案。这是我能够想出的解决方案:
add_action( 'woocommerce_single_product_summary', 'neonbrand_show_member_price_non_members' );
function neonbrand_show_member_price_non_members($price) {
global $product;
if ( $product->is_type( 'variable' ) ) {
$variations = $product->WC_Product_Variable::get_available_variations();
$variations_id = wp_list_pluck( $variations, 'variation_id' );
if ( ! wc_memberships_is_user_active_member( get_current_user_id(), 'vip-membership' ) ) {
$a = get_option( 'wc_memberships_rules' );
foreach($a as $value) {
if(!empty(array_intersect($variations_id, $value['object_ids']))) {
$discount = $value['discount_amount'];
$nonmember_price = $product->get_price();
$member_price[] = $nonmember_price - $discount;
}
}
echo '<p class="price"><b><i>Member Price As Low As: $'.min($member_price).'</i></b></p>';
}
}
}
我对大多数产品都有变体,这就是为什么我必须实施“会员价格低至”,因为变体有不同的折扣。显然,所有这一切的动机是让人们成为会员。
这应该是插件 IMO 的一个功能。但是♂️</p>
我找到了一个解决方案:
echo wc_memberships()->get_member_discounts_instance() >get_product_discount($product->id);
使用此代码,您可以找到折扣。
让我知道。