Zmiana wyświetlanej ceny WooCommerce na podstawie roli użytkownika i kategorii [zamknięte]
13
Chcę wyświetlić inną cenę w zależności od roli użytkownika (hurtownik, dealer itp.) ORAZ w zależności od kategorii.
Istnieje dynamiczna wtyczka cenowa, która wyświetla te rabaty po dodaniu produktu do koszyka, ale nie na samej stronie.
Czy istnieje sposób użycia filtra lub akcji w celu sprawdzenia poziomu użytkownika, sprawdzenia kategorii produktu, a następnie dynamicznej zmiany ceny?
Tak, możesz użyć woocommerce_get_pricehaka do filtrowania, aby odfiltrować wartość na podstawie roli użytkownika i odpowiednio zwrócić cenę, np .:
add_filter('woocommerce_get_price','custom_price_WPA111772',10,2);/**
* custom_price_WPA111772
*
* filter the price based on category and user role
* @param $price
* @param $product
* @return
*/function custom_price_WPA111772($price, $product){if(!is_user_logged_in())return $price;//check if the product is in a category you want, let say shirtsif( has_term('shirts','product_cat',$product->ID)){//check if the user has a role of dealer using a helper function, see bellowif(has_role_WPA111772('dealer')){//give user 10% of
$price = $price *0.9;}}return $price;}/**
* has_role_WPA111772
*
* function to check if a user has a specific role
*
* @param string $role role to check against
* @param int $user_id user id
* @return boolean
*/function has_role_WPA111772($role ='',$user_id =null){if( is_numeric( $user_id ))
$user = get_user_by('id',$user_id );else
$user = wp_get_current_user();if( empty( $user ))returnfalse;return in_array( $role,(array) $user->roles );}
Obecnie wtyczka jest w początkowej fazie, ale wkrótce będą dostępne aktualizacje obsługujące dodatkowe funkcje, takie jak cena w zależności od kategorii produktu.
Możesz wypróbować WooCommerce dla konkretnych klientów . Dzięki tej wtyczce możesz dodawać różne ceny dla zarejestrowanych użytkowników.
Obecnie wtyczka jest w początkowej fazie, ale wkrótce będą dostępne aktualizacje obsługujące dodatkowe funkcje, takie jak cena w zależności od kategorii produktu.
źródło