Als u groothandelsbestellingen in één oogopslag wilt laten opvallen, kunt u ze een eigen volgnummervoorvoegsel geven. U kunt bijvoorbeeld bestelling #1234 omzetten in WH-1234. Dit artikel laat zien hoe u een aangepast voorvoegsel toevoegt aan groothandelsordernummers met een codefragment. Dit maakt het gemakkelijk om groothandels- en detailhandelsbestellingen van elkaar te onderscheiden in de WooCommerce-bestellijst.
Vereisten
- WooCommerce Wholesale Prices Premium moet geïnstalleerd en actief zijn. De detectie van het ordertype die in dit codefragment wordt gebruikt, is afhankelijk van de
_wwpp_order_typemeta-sleutel, die door deze plugin bij het afrekenen wordt ingesteld. - Toegang tot het toevoegen van aangepaste PHP-code, hetzij via het functions.php-bestand van uw actieve child-thema of een codefragment-plugin zoals WPCode.
De kolom ordertype
Wanneer een groothandelsbestelling wordt geplaatst, voegt WooCommerce Wholesale Prices Premium een kolom Order Type toe aan de WooCommerce Orders-pagina, zodat u in één oogopslag kunt zien welke bestellingen van groothandelsklanten kwamen.
U kunt dit verder uitbreiden door een aangepast voorvoegsel toe te voegen aan het bestelnummer voor groothandelsbestellingen. Voeg het volgende codefragment toe aan functions.php van uw child-thema of aan een codefragment-plugin:
add_filter( 'woocommerce_order_number', 'wwpp_custom_wholesale_order_number_prefix', 10, 2 );
function wwpp_custom_wholesale_order_number_prefix( $order_number, $order ) {
$prefix = 'WH-'; // Change this to any prefix you like
$order_type = $order->get_meta( '_wwpp_order_type', true ); // HPOS-compatible meta read
if ( 'wholesale' === $order_type ) {
return $prefix . $order_number;
}
return $order_number;
}
Wijzig de waarde van $prefix in een willekeurige tekenreeks die u wilt, bijvoorbeeld 'WHSL-' of 'B2B-'. Het voorvoegsel wordt voorafgegaan aan het bestaande bestelnummer, dus bestelling #1234 wordt WH-1234.
Dit codefragment gebruikt $order->get_meta() om het ordertype te lezen. Dit is de juiste aanpak voor sites die gebruikmaken van WooCommerce's High-Performance Order Storage (HPOS). Het direct gebruiken van get_post_meta() werkt niet op HPOS-geactiveerde winkels, omdat bestelgegevens niet langer in de posts-tabel worden opgeslagen.
Resultaat
Hier is het resultaat:

Probleemoplossing
Het voorvoegsel verschijnt niet op groothandelsbestellingen. Bevestig dat WooCommerce Wholesale Prices Premium actief is. De _wwpp_order_type meta wordt door deze plugin ingesteld bij het afrekenen, dus bestellingen die zijn geplaatst voordat deze was geïnstalleerd, hebben de meta niet en komen niet overeen. Controleer ook of het codefragment is toegevoegd aan functions.php van uw child-thema (niet het bestand van het bovenliggende thema, dat bij thema-updates wordt overschreven) of aan een codefragment-plugin.
Het voorvoegsel verschijnt op alle bestellingen, niet alleen op groothandelsbestellingen. Controleer of de $order->get_meta( '_wwpp_order_type', true ) aanroep 'wholesale' retourneert voor de verwachte bestellingen. U kunt tijdelijk een var_dump aanroep toevoegen binnen de functie (alleen op een ontwikkelingssite) om de retourwaarde te inspecteren.
Hulp Nodig?
Als je een vraag hebt of tegen problemen aanloopt, staan we klaar om te helpen.
- Premium gebruikers: Open een ondersteuningsticket
- Gratis gebruikers: Bezoek ons communityforum

