woocommerce_checkout_fields
Дозволяє змінити набір полів та їх властивості у формах на сторінці оформлення замовлення.
Використання
add_filter( 'woocommerce_checkout_fields', 'wp_kama_woocommerce_checkout_fields_filter'); /** * Function for `woocommerce_checkout_fields` filter-hook. * * @param $fields * * @return */ function wp_kama_woocommerce_checkout_fields_filter( $fields ){ // Filter... return $fields; }
- $fields
- Масив полів.
Приклад даних у $fields:
Array( [billing] => Array( [billing_first_name] => Array( [label] => Ім'я [required] => 1 [class] => Array( [0] => form-row-first ) [autocomplete] => given-name [priority] => 10 ) [billing_last_name] => Array( [label] => Прізвище [required] => 1 [class] => Array( [0] => form-row-last ) [autocomplete] => family-name [priority] => 20 ) [billing_company] => Array( [label] => Назва компанії [class] => Array( [0] => form-row-wide ) [autocomplete] => організація [priority] => 30 [required] => ) [billing_country] => Array( [type] => country [label] => Країна [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field [2] => update_totals_on_change ) [autocomplete] => country [priority] => 40 ) [billing_address_1] => Array ( [label] => Адреса [placeholder] => Номер будинку та назва вулиці [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-line1 [priority] => 50 ) [billing_address_2] => Array( [placeholder] => Додаткові відомості про адресу (необов'язково) [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-line2 [priority] => 60 [required] => ) [billing_city] => Array( [label] => Населений пункт [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-level2 [priority] => 70 ) [billing_state] => Array( [type] => state [label] => Область / район [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [validate] => Array( [0] => state ) [autocomplete] => address-level1 [priority] => 80 [country_field] => billing_country [country] => UA ) [billing_postcode] => Array( [label] => Поштовий індекс [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [validate] => Array( [0] => postcode ) [autocomplete] => postal-code [priority] => 90 ) [billing_phone] => Array( [label] => Телефон [required] => 1 [type] => tel [class] => Array( [0] => form-row-wide ) [validate] => Array( [0] => phone ) [autocomplete] => tel [priority] => 100 ) [billing_email] => Array( [label] => Email [required] => 1 [type] => email [class] => Array( [0] => form-row-wide ) [validate] => Array( [0] => email ) [autocomplete] => email username [priority] => 110 ) ) [Shipping] => Array( [shipping_first_name] => Array( [label] => Ім'я [required] => 1 [class] => Array( [0] => form-row-first ) [autocomplete] => given-name [priority] => 10 ) [shipping_last_name] => Array( [label] => Прізвище [required] => 1 [class] => Array( [0] => form-row-last ) [autocomplete] => family-name [priority] => 20 ) [shipping_company] => Array( [label] => Назва компанії [class] => Array( [0] => form-row-wide ) [autocomplete] => організація [priority] => 30 [required] => ) [shipping_country] => Array( [type] => country [label] => Країна [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field [2] => update_totals_on_change ) [autocomplete] => country [priority] => 40 ) [shipping_address_1] => Array( [label] => Адреса [placeholder] => Номер будинку та назва вулиці [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-line1 [priority] => 50 ) [shipping_address_2] => Array( [placeholder] => Додаткові відомості про адресу (необов'язково) [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-line2 [priority] => 60 [required] => ) [shipping_city] => Array( [label] => Населений пункт [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [autocomplete] => address-level2 [priority] => 70 ) [shipping_state] => Array( [type] => state [label] => Область / район [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [validate] => Array( [0] => state ) [autocomplete] => address-level1 [priority] => 80 [country_field] => shipping_country [country] => UA ) [shipping_postcode] => Array( [label] => Поштовий індекс [required] => 1 [class] => Array( [0] => form-row-wide [1] => address-field ) [validate] => Array( [0] => postcode ) [autocomplete] => postal-code [priority] => 90 ) ) [account] => Array() [Order] => Array( [order_comments] => Array( [type] => textarea [class] => Array( [0] => notes ) [label] => Примітка до замовлення [placeholder] => Примітки до вашого замовлення, наприклад, особливі побажання відділу доставки. ) ) )
Приклади
#1 Видалимо поле “Назва компанії” з форм на сторінці “Оформлення замовлення”
add_filter( 'woocommerce_checkout_fields', 'remove_billing_company_field' ); /** * Видаляє з форм на сторінці "Оформлення замовлення" поле "Назва компанії". * * @param array $fields * * @return array */ function remove_billing_company_field( $fields ){ unset( $fields['billing']['billing_company'] ); unset( $fields['shipping']['shipping_company'] ); return $fields; }
Де викликається хук
woocommerce_checkout_fields
Де використовується хук у WooCommerce
Використання не знайдено.