Я хотел бы иметь другой суффикс цены для двух разных ролей пользователей на моем сайте Woo C.
Обычный клиент не будет иметь суффикса и цены, включая налог, который я установил на вкладке "Настройки налога" для Woo.
Торговый клиент имеет цену без налога, и я хочу дать ему суффикс "без НДС ({price_inclusive_tax} в c НДС)".
Альтернатива, которую я мог бы сделать, - установить настройки Woo с этим суффиксом и вместо этого попытаться скрыть суффикс от обычного пользователя и других ролей пользователя. Однако я бы предпочел добавить его и попробовал приведенный ниже код, который я нашел и изменил, но он не работает.
Кто-нибудь может подсказать, что с ним не так?
add_filter( 'custom_price_suffix', 100, 2 );
function custom_price_suffix($price, $current_user_role) {
$your_suffix = 'ex VAT ({price_including_tax} inc VAT)';
if($current_user_role == 'default_wholesaler') {
$price .= '$your_suffix '; }
return apply_filters( 'custom_price_suffix', $your_suffix );
}
Благодаря предложению ниже. В настоящее время у меня есть следующий код:
function custom_price_suffix( $price, $product ) {
$your_suffix = 'ex VAT ({price_including_tax} inc VAT)';
// 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 = 'ex VAT ({price_including_tax} inc VAT)';
}
// return $price;
return apply_filters( 'woocommerce_get_price', $price );
}
add_filter( 'woocommerce_get_price_html', 'custom_price_suffix', 100, 2 );
Результатом этого кода является суффикс теперь появляется только один раз. Однако он убрал показ цены и не распознает шорткод {price_include_tax}.
Как отображается для пользователя по умолчанию для оптовых покупателей на переднем конце