Jak snadno přidat pole IČ a DIČ do pokladny WooCommerce, aniž byste museli sahat po pluginu

31. 3. 2024

V dnešní době, kdy každý byte načítání navíc může znamenat ztrátu zákazníka, je důležité udržovat váš e-shop co nejefektivnější. Přidání pole pro IČ a DIČ do pokladny WooCommerce nemusí znamenat instalaci těžkopádných pluginů. Ukážeme vám, jak toho dosáhnout jednoduchým vložením kódu, který nezpomalí váš web a zároveň zachová všechny potřebné funkce.

Máte e-shop na WooCommerce a potřebujete od vašich zákazníků získat jejich IČ a DIČ, ale nechcete kvůli tomu instalovat další pluginy? Dnes vám ukážeme, jak přidat tyto informace přímo do formuláře pokladny pomocí několika řádků kódu. Tento jednoduchý návod nejen zefektivní váš web, ale také vám umožní udržet lepší přehled o vašich zákaznících.

Jak na to?

Níže uvedený kód stačí vložit do souboru functions.php ve vaší aktivní child šabloně. Pokud používáte Oxygen Builder, nebo nepoužíváte child šablonu (což určitě doporučujeme), kód umístěte jako nový snippet např. pomocí pluginu Code snippets

// Přidání vlastních polí do formuláře pokladny
function add_custom_checkout_fields( $fields ) {
$fields['billing']['billing_ic'] = array(
'label' => __('IČ', 'woocommerce'),
'placeholder' => _x('IČ', 'placeholder', 'woocommerce'),
'required' => false,
'class' => array('form-row-wide'),
'clear' => true,
);

$fields['billing']['billing_dic'] = array(
'label' => __('DIČ', 'woocommerce'),
'placeholder' => _x('DIČ', 'placeholder', 'woocommerce'),
'required' => false,
'class' => array('form-row-wide'),
'clear' => true,
);

// Získání pozice pole "Název firmy"
$company_field_position = array_search('billing_company', array_keys($fields['billing']));

// Vložení pole "IČ" pod pole "Název firmy"
if ($company_field_position !== false) {
$company_field_position++;
$fields['billing'] = array_slice($fields['billing'], 0, $company_field_position, true) +
array('billing_ic' => $fields['billing']['billing_ic'], 'billing_dic' => $fields['billing']['billing_dic']) +
array_slice($fields['billing'], $company_field_position, null, true);
}

return $fields;
}
add_filter( 'woocommerce_checkout_fields' , 'add_custom_checkout_fields' );

// Uložení vlastních polí
function save_custom_checkout_fields( $order_id ) {
if ( ! empty( $_POST['billing_ic'] ) ) {
update_post_meta( $order_id, 'billing_ic', sanitize_text_field( $_POST['billing_ic'] ) );
}
if ( ! empty( $_POST['billing_dic'] ) ) {
update_post_meta( $order_id, 'billing_dic', sanitize_text_field( $_POST['billing_dic'] ) );
}
}
add_action( 'woocommerce_checkout_update_order_meta', 'save_custom_checkout_fields' );

// Zobrazení v administraci v objednávkách
function display_custom_fields_in_admin_order( $order ){
echo '<p><strong>'.__('IČ').':</strong> ' . get_post_meta( $order->get_id(), 'billing_ic', true ) . '</p>';
echo '<p><strong>'.__('DIČ').':</strong> ' . get_post_meta( $order->get_id(), 'billing_dic', true ) . '</p>';
}
add_action( 'woocommerce_admin_order_data_after_billing_address', 'display_custom_fields_in_admin_order', 10, 1 );

Uložení a zobrazení polí

Jakmile je kód na místě, WooCommerce automaticky přidá pole pro IČ a DIČ do formuláře pokladny a uchová tyto informace s objednávkou. V administraci WooCommerce pak snadno uvidíte tyto hodnoty u každé objednávky.

Proč to dělat bez pluginů?

Použitím tohoto přístupu si udržíte větší kontrolu nad funkcionalitou vašeho webu, snížíte riziko konfliktů mezi pluginy a zvýšíte rychlost načítání vašeho webu.

Zkuste to a uvidíte, že přidání funkcí do vašeho e-shopu může být snadné a efektivní i bez zbytečných pluginů. Váš e-shop bude rychlejší, bezpečnější a přesně na míru vašim potřebám.

Facebook
LinkedIn

A nyní je na řadě Vaše realizace a Vaše představa. Jsme tu pro Vás, abychom Vám pomohli vytvořit nový web, nebo dát "nový kabát" stávajícímu.

Cenu přizpůsobíme Vašemu rozpočtu a představám

Zjistěte cenu vašeho projektu

Plánujete nový web nebo potřebujete oživit ten stávající? Napište nám a získejte přesnou cenovou kalkulaci  právě pro vaše potřeby. Bez závazků, plně přizpůsobené vašemu rozpočtu a představám.

Nezávazná poptávka ceny webu