Вы можете использовать встроенные возможности WooCommerce для настройки двух разных цен для товаров. Вот как это можно сделать:
1. Создайте две разные цены для товаров: одну для обычных клиентов и другую для VIP-клиентов. Вы можете это сделать в разделе "Редактировать товар" на странице редактирования товара. В поле "Обычная цена" укажите обычную цену для товара, а в поле "Цена (для VIP-клиентов)" укажите скидочную цену для VIP-клиентов.
2. Добавьте код, который будет проверять, является ли пользователь VIP-клиентом, и на основе этого отображать соответствующую цену. Для этого вам понадобится добавить небольшой код в файл functions.php вашей темы (рекомендуется использовать дочернюю тему, чтобы изменения не были потеряны при обновлении основной темы). Вот пример кода:
```php
function custom_product_price( $price, $product ) {
// Проверяем, является ли текущий пользователь VIP-клиентом
$current_user = wp_get_current_user();
$user_roles = $current_user->roles;
if ( in_array( 'vip-client', $user_roles ) ) {
// Пользователь VIP-клиент, отображаем скидочную цену
$vip_price = get_post_meta( $product->get_id(), 'Цена (для VIP-клиентов)', true );
if ( $vip_price ) {
$price = wc_price( $vip_price );
}
}
return $price;
}
add_filter( 'woocommerce_get_price_html', 'custom_product_price', 10, 2 );
```
В этом коде мы используем фильтр `woocommerce_get_price_html`, который позволяет изменять отображение цены товара. Функция `custom_product_price` проверяет роли пользователя и, если пользователь является VIP-клиентом, заменяет отображаемую цену на скидочную цену.
Обратите внимание, что код можно настроить для вашей темы и требует некоторых навыков программирования. Если вам это не подходит, вы можете обратиться к разработчику темы или специалисту по WooCommerce для помощи.