Výchozí nastavení pro e-maily nám nemusí zcela vyhovovat, protože je poměrně jednoduché. Ukážeme si, jak jednoduše přidat další pole do formuláře nastavení.
Nastavení e-mailu pro stav on-hold vypadá takto:
V jednom z předchozích článků jsme si ukazovali, jak upravit šablonu e-mailu, aby při přijetí objednávky, která má platební metodu Dobírka, byl zobrazen odlišný text.
My však budeme chtít, aby měl správce e-shopu možnost tento text nastavit.
WooCommerce má pro tato nastavení dynamický filter woocommerce_settings_api_form_fields_“id nastavení“.
V našem případě to je woocommerce_settings_api_form_fields_customer_on_hold_order.
Vytvoříme si funkci, jenž bude rozšiřovat formulář nastavení.
add_filter( 'woocommerce_settings_api_form_fields_customer_on_hold_order', 'musilda_add_email_setting_field' );
function musilda_add_email_setting_field( $fields ){
$fields['dobirka-info'] = array(
'title' => __( 'Dobírka info', 'muislda' ),
'type' => 'textarea',
'css' => 'width:400px; height: 75px;',
'desc_tip' => true,
'description' => __( 'Text, který se zobrazí v e-mailu, pokud byla použita platební metoda Dobírka', 'musilda' ),
'default' => '',
);
return $fields;
}
Výsledek:
Jak vidíte, je to poměrně jednoduché.
Hodnotu nastavení pak získáme z option woocommerce_customer_on_hold_order_settings.