1. Home
  2. Kennisbank
  3. WooCommerce Wholesale Prices Premium
  4. Backend
  5. Hoe een andere onderwerpregel voor nieuwe e-mails voor groothandelsbestellingen in te stellen

Hoe een andere onderwerpregel voor nieuwe e-mails voor groothandelsbestellingen in te stellen

⚠️ Conceptversie — Klik NIET op "Publiceren" in WP Admin.
Dit concept moet samengevoegd worden met het originele artikel, niet als een nieuw artikel gepubliceerd worden. Direct publiceren creëert een duplicaatartikel op de verkeerde URL.

➡️ Bekijk de conceptversie en voer dan /kb-publish 86cxuy4ru uit — dit detecteert de rydm-koppeling en stuurt automatisch door naar het samenvoegings-eindpunt.

Origineel artikel: Hoe een andere nieuwe bestel-e-mailonderwerpregel in te stellen voor groothandelsbestellingen · ClickUp-taak: Hoe een andere nieuwe bestel-e-mailonderwerpregel in te stellen voor groothandelsbestellingen

Als je een groothandelswinkel runt, wil je misschien dat je e-mailmeldingen voor nieuwe bestellingen groothandelsbestellingen duidelijk identificeren, en zelfs laten zien welke groothandelsrol de bestelling heeft geplaatst. WooCommerce Wholesale Prices Premium bevat nog geen ingebouwde manier om het e-mailonderwerp te overschrijven, maar je kunt het aanpassen met een codefragment. Dit artikel laat zien hoe.

Vereisten

Hoe de onderwerpregel van de e-mail voor nieuwe bestellingen aan te passen voor groothandelsbestellingen

Standaard gebruikt WooCommerce dezelfde onderwerpregel voor alle nieuwe bestellingen. Het onderstaande fragment haakt in op woocommerce_email_subject_new_order en voegt de weergavenaam van de groothandelsrol toe aan het onderwerp wanneer de bestelling een groothandelsbestelling is. Voor detailhandelsbestellingen wordt het standaard WooCommerce-onderwerp ongewijzigd teruggegeven.

Voeg het volgende fragment toe aan het functions.php-bestand van je child theme of aan een codefragment-plugin:

// Custom New Order Subject - Adding the Wholesale Role Name in the Subject Line
add_filter( 'woocommerce_email_subject_new_order', 'wwpp_change_email_subject', 1, 2 );

function wwpp_change_email_subject( $subject, $order ) {

    // Only customise the subject for wholesale orders.
    $order_type = $order->get_meta( '_wwpp_order_type', true );
    if ( 'wholesale' !== $order_type ) {
        return $subject;
    }

    // Get the wholesale role slug stored on the order (e.g. 'wholesale_customer').
    $role_slug = $order->get_meta( '_wwpp_wholesale_order_type', true );

    // Look up the human-readable role name from the registered wholesale roles.
    // getAllRegisteredWholesaleRoles() returns an array keyed by role slug,
    // each entry containing a 'roleName' key with the display name.
    $all_wholesale_roles = WWP_Wholesale_Roles::getInstance()->getAllRegisteredWholesaleRoles();
    $role_label          = isset( $all_wholesale_roles[ $role_slug ]['roleName'] )
        ? $all_wholesale_roles[ $role_slug ]['roleName']
        : $role_slug; // Fallback to slug if the role is no longer registered.

    // Build the custom subject using the readable role name.
    $blogname = wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES );
    $subject  = sprintf( '[%s] Order #%s - %s', $role_label, $order->get_id(), $blogname );

    return $subject;
}

Wat _wwpp_order_type en _wwpp_wholesale_order_type opslaan: Elke bestelling geplaatst door een groothandelsklant krijgt twee meta-waarden. _wwpp_order_type is ofwel 'wholesale' of 'retail'. _wwpp_wholesale_order_type slaat de slug van de groothandelsrol op (bijv. wholesale_customer), niet de weergavenaam. Het bovenstaande fragment gebruikt getAllRegisteredWholesaleRoles() om de slug om te zetten naar het leesbare label dat je hebt geconfigureerd in je groothandelsrolinstellingen.

Probleemoplossing

De onderwerpregel verandert niet. Controleer of het fragment correct is opgeslagen en of er geen PHP-fouten zijn. De woocommerce_email_subject_new_order-filter wordt alleen uitgevoerd wanneer WooCommerce de e-mail voor nieuwe bestellingen verzendt. Bevestig dat de e-mail is ingeschakeld onder WooCommerce → Instellingen → E-mails → Nieuwe bestelling.

Het onderwerp toont de rol-slug in plaats van de weergavenaam. Dit gebeurt als de groothandelsrol is verwijderd of hernoemd nadat de bestelling is geplaatst. Het fragment valt in dat geval terug op de slug. Als je consistent slugs ziet, controleer dan of de rol nog steeds is geregistreerd onder WooCommerce Wholesale Prices → Wholesale Roles.

Retailbestellingen tonen ook een aangepast onderwerp. Zorg ervoor dat het fragment de _wwpp_order_type !== 'wholesale' vroege retour bevat (zoals hierboven getoond). Zonder dit wordt de filter ook toegepast op retailbestellingen. Aangezien _wwpp_wholesale_order_type leeg is voor retailbestellingen, zou het onderwerp dan een lege haakjes tonen.

Hulp Nodig?

Als je een vraag hebt of ergens tegenaan loopt, staan we klaar om te helpen.

Was dit artikel nuttig?

Gerelateerde Artikelen

Voltooi uw aankoop