„Tlačítková novela“ ve Woocommerce

Led 10, 2023 | WooCommerce

Možná jste zaznamenali že od 6.1.2023 vešla v platnost tzv. „Tlačítková novela“. Kromě užitečných věcí, které upravuje jako jsou pravidla pro uvádění slev nebo zobrazování recenzí jen od reálných zákazníků je tam i pár úsměvných věcí. Hezký článek o novele najdete i na webu jednoho z předních tvůrců pluginů pro Woocommerce Wpify. Stáhnout si od nich můžete i plugin, který vám s aplikací pravidel pomůže.

Je potřeba plugin?

Pokud máte ale nějaký menší e-shop, nepracujete se slevami a recenzemi, dost možná se obejdete i bez pluginu. Pár těch úsměvných pravidel lze totiž jednodušše aplikovat i pomocí krátkých snippetů, které vložíte například do souboru functions.php své child šablony.

Výzva ke kontrole košíku

Ano, správně byste měli zákazníka vyzvat, aby si překontroloval svůj košík. Toho dosáhneme snadno pomocí tohoto kódu.

add_action('woocommerce_review_order_before_submit', 'lh_cart_control_notice');

function lh_cart_control_notice(){
    echo '<p>Před odesláním objednávky si prosím pečlivě překontrolujte košík</p>';
}

Výzva se zobrazí na pokladně před tlačítkem odesílajícím objednávku.

Změna textace objednávkového tlačítka

Pokud jste na nějakém e-shopu narazili na krkolomně znějící formulaci Objednávka zavazující k platbě, tak se daný e-shop patrně novelou už zabýval. Z tlačítka by mělo být patrné, že pokud na něj zákazník klikne, dochází k uzavření kupní smlouvy. Textaci tlačítka lze změnit snadno (a nemusí být snad ani tak krkolomná):

add_filter( 'woocommerce_order_button_text', 'lh_order_button_text' );
 
function lh_order_button_text( $button_text ) {
	return 'Potvrďte nákup';
}

Obchodní podmínky do e-mailu

Při objednávce by zákazníkovi mělo do e-mailu dorazit aktuální znění (v okamžiku objednání) obchodních podmínek. Ideální je tedy zaslat obchodní podmínky jako přílohu ve formátu pdf. Obchodní podmínky si převeďte do formátu pdf (umí to třeba aplikace Word). Následující kód odešle obchodní podmínky při stavech objednávky Čeká na vyřízení (customer_on_hold_order), Zpracovává se (customer_processing_order) a Dokončeno (customer_completed_order). Samozřejmě nemusíte posílat ve všech stavech…záleží na tom jak se stavy pracujete.

add_filter('woocommerce_email_attachments', 'lh_terms_attachment_to_email', 10, 4);

function lh_terms_attachment_to_email($attachments, $email_id, $order, $email) {
    $email_ids = array('customer_on_hold_order', 'customer_processing_order', 'customer_completed_order');
    if (in_array($email_id, $email_ids)) {
        $upload_dir = wp_upload_dir();
        $attachments[] = $upload_dir['basedir']."/terms/obchodni_podminky.pdf";
    }
    return $attachments;
}

Obchodní podmínky nahrajte přes ftp do složky na serveru. Ukázka výše počítá, že obchodní podmínky jsou ve složce terms ve složce pro upload souborů. Ve výchozím nastavení /wp-content/uploads/terms/.