Variabilný symbol v notifikačnom e-maile

Keď zákazník nakupuje tovar na Vašom e-shope a platí ho formou prevodu na bankový účet, dostáva sa jeho objednávka do stavu “čaká na platbu” a prichádza mu notifikačný e-mail.

V ňom je síce napísané, že na identifikáciu platby je potrebné použiť číslo objednávky, nie každý si však z toho odvodí, že má číslo objednávky zadať vo svojom internet bankingu ako variabilný symbol.

Aby sme to zákazníkom uľahčili, použijeme jednoduchý snippet, ktorý vložíme do functions.php (ideálne v child téme) a variabilný symbol doplníme do notifikačného e-mailu. Zároveň sa variabilný symbol zjaví aj na ďakovnej stránke, ktorá potvrdzuje úspešnú objednávku.

  1. add_filter( 'woocommerce_bacs_account_fields', 'custom_bacs_account_field', 10, 2);
  2. function custom_bacs_account_field( $account_fields, $order_id ) {
  3.     static $call_counter = 0;
  4.     if($call_counter > 0 )  {
  5.         return $account_fields;
  6.     }
  7.  
  8.     $order = wc_get_order( $order_id );
  9.     $account_fields['variable_symbol' ] = array(
  10.             'label' => 'Variabilný symbol',
  11.             'value' => $order_id
  12.         );
  13.     $call_counter++;
  14.     return $account_fields;
  15. }

Tento kód bol pôvodne funkčný aj bez statickej premennej $call_counter. V nových verziách WooCommerce, však z nezistiteľných dôvodov dochádza k duplikácií variabilného symbolu, čo vyzerá amatérsky.

Na začiatku si teda definujeme premennú $call_counter, ktorú nastavíme na nulu. Nasleduje podmienka, v ktorej kontrolujeme hodnotu tejto premennej a ak je vyššia ako 0, znamená to, že cyklus, ktorý spracováva túto funkciu už prebehol a teda nerobíme nič, len rovno vrátime hotový výsledok. Ak je ale hodnota 0, spustíme zbytok kódu. V ňom do premennej $account_fields[‘variable_symbol’] pridáme hodnotu Variabilný symbol : číslo objednávky a tým dosiahneme to, čo potrebujeme.

Výsledok v potvrdzujúcom e-maili a na ďakovnej stránke vyzerá takto:

Poznáte iný spôsob ako vypisovať variabilný symbol? Napíšte do komentára.

Potrebujete poradiť s nejakým WordPress problémom?
Spýtajte sa vo Facebook skupine WordPress pre začiatočníkov, radi pomôžeme.

PRIDAŤ SA DO SKUPINY

Pridajte komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

Scroll to Top