根据用户角色删除价格后缀
Removing price suffix based on user role
添加基于用户角色的后缀失败,因为它不会显示 Woo 价格显示简码,我现在从另一个方向解决这个问题 - 我已经将后缀添加到 Woos 税收选项卡,现在改为想要删除后缀(从除一个用户角色之外的所有用户角色)。
我在 github 上找到了这段代码,用于从产品中删除后缀:
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 2 );
function custom_woocommerce_get_price_suffix( $price_display_suffix, $product ) {
if ( ! $product->is_taxable() ) {
return '';
}
return $price_display_suffix;
}
我修改了它以对某些用户类型隐藏后缀
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 2 );
function custom_woocommerce_get_price_suffix( $price_display_suffix, $product ) {
// check current user role
$user = wp_get_current_user();
$roles = ( array ) $user->roles;
if ( in_array( 'administrator', $roles ) ) {
$price = $your_suffix;
} elseif ( in_array( 'default_wholesaler', $roles ) ) {
$price = '$your_suffix';
return '';
}
return $price_display_suffix;
}
这有效,但是我不得不切换用户(我希望管理员和批发商看到后缀)并输入客户等。
问题是来宾客户仍然看到后缀。
有人可以建议一种对登录 'default-wholesaler' 用户和 'Administrator' 以外的任何人隐藏后缀的方法吗?
谢谢!
您可以使用以下内容。
此适用于管理员角色!您可以自己将其他角色添加为 'exercise'
function custom_woocommerce_get_price_suffix( $html, $product, $price, $qty ) {
// check current user role
$user = wp_get_current_user();
$roles = ( array ) $user->roles;
// if NOT in array user roles
if ( !in_array( 'administrator', $roles ) ) {
$html = '';
}
return $html;
}
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 4 );
添加基于用户角色的后缀失败,因为它不会显示 Woo 价格显示简码,我现在从另一个方向解决这个问题 - 我已经将后缀添加到 Woos 税收选项卡,现在改为想要删除后缀(从除一个用户角色之外的所有用户角色)。
我在 github 上找到了这段代码,用于从产品中删除后缀:
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 2 );
function custom_woocommerce_get_price_suffix( $price_display_suffix, $product ) {
if ( ! $product->is_taxable() ) {
return '';
}
return $price_display_suffix;
}
我修改了它以对某些用户类型隐藏后缀
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 2 );
function custom_woocommerce_get_price_suffix( $price_display_suffix, $product ) {
// check current user role
$user = wp_get_current_user();
$roles = ( array ) $user->roles;
if ( in_array( 'administrator', $roles ) ) {
$price = $your_suffix;
} elseif ( in_array( 'default_wholesaler', $roles ) ) {
$price = '$your_suffix';
return '';
}
return $price_display_suffix;
}
这有效,但是我不得不切换用户(我希望管理员和批发商看到后缀)并输入客户等。
问题是来宾客户仍然看到后缀。
有人可以建议一种对登录 'default-wholesaler' 用户和 'Administrator' 以外的任何人隐藏后缀的方法吗?
谢谢!
您可以使用以下内容。
此适用于管理员角色!您可以自己将其他角色添加为 'exercise'
function custom_woocommerce_get_price_suffix( $html, $product, $price, $qty ) {
// check current user role
$user = wp_get_current_user();
$roles = ( array ) $user->roles;
// if NOT in array user roles
if ( !in_array( 'administrator', $roles ) ) {
$html = '';
}
return $html;
}
add_filter( 'woocommerce_get_price_suffix', 'custom_woocommerce_get_price_suffix', 10, 4 );