gpt4 book ai didi

php - 在 WooCommerce 中向非成员(member)显示成员(member)折扣价

转载 作者:行者123 更新时间:2023-12-04 15:45:55 24 4
gpt4 key购买 nike

在 WooCommerce 中,我有 3 个成员(member)级别(银卡、金卡和白金卡),我为更高的成员(member)级别应用了更高的折扣率。

我想向每个人展示 4 种不同的价格(非成员(member)、白银、黄金和白金),以便他们知道如果他们加入成员(member)可以在每种产品上节省多少钱。例如:

  • 正常价格:100 美元
  • 银卡成员(member):90 美元
  • 金牌成员(member):80 美元
  • 白金成员(member):70 美元

我试过了 the code below :

function bsc_wc_memberships_members_only_product_price() {
global $product;

$user = wp_get_current_user();

if ( !wc_memberships_is_user_active_member($user->ID, 'test') ) {

$id = $product->get_id();
$discount = get_post_meta( $id, 'member_price', true );
$price = $product->get_price();

echo 'Member price: $'.$total = $price - $discount;
}

}
add_action( 'woocommerce_before_add_to_cart_button', 'bsc_wc_memberships_members_only_product_price' );

但不幸的是它并没有真正起作用...任何建议将不胜感激。

最佳答案

有一个明显的错误:

echo 'Member price: $'.$total = $price - $discount;

应该只是:

echo 'Member price: $'. $price - $discount;

甚至更好:

echo 'Member price: '. wc_price( $price - $discount );

但由于这是显示的价格,您需要使用一些不同且更完整的东西,例如:

add_action( 'woocommerce_before_add_to_cart_button', 'bsc_wc_memberships_members_only_product_price' );
function bsc_wc_memberships_members_only_product_price() {
global $product;

if ( ! wc_memberships_is_user_active_member( get_current_user_id(), 'test' ) ) {

$discount = wc_get_price_to_display( $product, array('price' => $product->get_meta('member_price') ) );
$price = wc_get_price_to_display( $product );

$silver_price = $price - $discount;

echo '<span class="silver-price">' . __('Member price') . ': ' . wc_price( $silver_price ) . '</span>';
}
}

检查 wp_postmeta 数据库表下此产品的 member_price 元键是否确实存在自定义字段元值。

代码进入事件子主题(或事件主题)的 function.php 文件。它应该能更好地工作。

关于php - 在 WooCommerce 中向非成员(member)显示成员(member)折扣价,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55816156/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com