In sommige gevallen wilt u mogelijk een speciale productcategorie "Groothandel in de uitverkoop" instellen die artikelen bevat die een extra korting geven op basis van de groothandelsprijs, niet de normale prijs.
In plaats van prijzen of procentpunten handmatig aan te passen, is het mogelijk om dit in code te doen om een extra korting te geven op de groothandelsprijs voor artikelen die in deze "Groothandel in de uitverkoop" categorie verschijnen.
Merk op dat ik het specifiek heb over het geven van de korting op de groothandelsprijs, niet op de normale prijs. Gebruik voor het aanpassen van de % korting op de normale prijs de functie voor productcategorie procentuele kortingen.
Dit is bedoeld als een geavanceerde tutorial en mag alleen worden geïmplementeerd als u een goed begrip heeft van gebruikersrollen en Productcategorie-termen.
Voeg het volgende codefragment toe aan uw functions.php en pas de categorie slug aan (ik heb hier "wholesale-on-sale" gebruikt) en het percentage korting dat u wilt geven (0.5 wordt hier gebruikt voor 50% korting). U kunt ook meer "else if" voorwaarden toevoegen om te testen op andere rollen of andere categorieën.
/**
* Add further discount on top of a product's wholesale price.
* The function below give a further discount on the wholesale price for items in the "Wholesale On Sale" category.
* Important Note: Please adjust this functions code accordingly to fit your needs.
*/
function wwppAddDiscountToSaleCategory( $wholesalePrice , $product_id , $userWholesaleRole ) {
// Get all the category slugs this product belongs to
$terms = wp_get_post_terms( $product_id, 'product_cat' );
$categories = array();
foreach ( $terms as $term )
$categories[] = $term->slug;
/**
* Check if this product is under the "wholesale-on-sale" product category.
* Assuming that we wanted to apply 50% off on all products under this category on top of their existing wholesale price
* Please change 'wholesale-on-sale' category accordingly to fit your needs.
*/
if ( in_array( 'wholesale-on-sale', $categories ) ) {
/**
* Check if the current user have a role of 'wholesale_customer'.
* Assuming we wanted to have this effect on all users under 'wholesale_customer' role.
* Please change the role accordingly to fit your needs.
*/
if ( in_array( 'wholesale_customer', $userWholesaleRole ) ) {
/**
* In this example we are using 50% discount off from the product existing "wholesale price".
* Please change accordingly to fit your needs.
*/
if ( is_array( $wholesalePrice ) && isset( $wholesalePrice[ 'wholesale_price' ] ) )
$wholesalePrice[ 'wholesale_price' ] = $wholesalePrice[ 'wholesale_price' ] - ( $wholesalePrice[ 'wholesale_price' ] * 0.5 );
else
$wholesalePrice = $wholesalePrice - ( $wholesalePrice * 0.5 );
}
// You can add more else if conditions here if you want to test for other wholesale roles
}
// you can add more else if conditions here to test for other product categories
return $wholesalePrice;
}
add_filter( 'wwp_filter_wholesale_price_shop_v2', 'wwppAddDiscountToSaleCategory', 100, 3 );
add_filter( 'wwp_filter_wholesale_price_cart', 'wwppAddDiscountToSaleCategory', 100, 3 );
// You only need to uncomment this if you are using WooCommerce Wholesale Prices plugin lower than verison 1.6.x
// If you are on the latest version of our plugins, no need to uncomment this code to improve performance
// add_filter( 'wwp_filter_wholesale_price', 'wwppAddDiscountToSaleCategory', 100, 3 );
