Добавить новое поле на Странице оформления заказа WooCommerce | Без плагина
ฝัง
- เผยแพร่เมื่อ 3 ม.ค. 2025
- В этом видео я покажу Вам как добавить новое кастомное поле на Странице оформления заказа [checkout] в WooCommerce | Без использования плагина.
P.S Код который я добавил ниже добавился без угловых скобок, они были заменены на другие символы - [ ]. Так как эти скобки запрещено добавлять в описание к видео. Сверте код в описании с кодом в самом видео. Спасибо за понимание !!!
===============================
Код который нужно вставить в "functions.php":
/**
Добавляем новое поле на страницу checkout
*/
add_action( 'woocommerce_after_order_notes', 'my_custom_checkout_field' );
function my_custom_checkout_field( $checkout ) {
echo '[div id="my_custom_checkout_field"][h2]' . __('Новое поле') . '[/h2]';
woocommerce_form_field( 'my_field_name', array(
'type' =] 'text',
'class' =] array('my-field-class form-row-wide'),
'label' =] __('Заполните это поле'),
'placeholder' =〉 __('Введите что-нибудь'),
), $checkout-]get_value( 'my_field_name' ));
echo '[/div]';
}
/**
Обработка оформления заказа
*/
add_action('woocommerce_checkout_process', 'my_custom_checkout_field_process');
function my_custom_checkout_field_process() {
// Check if set, if its not set add an error.
if ( ! $_POST['my_field_name'] )
wc_add_notice( __( 'Пожалуйста, введите что-нибудь в это новое поле.' ), 'error' );
}
/**
Обновите мета-заказ, указав значение поля.
*/
add_action( 'woocommerce_checkout_update_order_meta', 'my_custom_checkout_field_update_order_meta' );
function my_custom_checkout_field_update_order_meta( $order_id ) {
if ( ! empty( $_POST['my_field_name'] ) ) {
update_post_meta( $order_id, 'Мое поле', sanitize_text_field( $_POST['my_field_name'] ) );
}
}
/**
Отображение значения поля на странице редактирования заказа
*/
add_action( 'woocommerce_admin_order_data_after_billing_address', 'my_custom_checkout_field_display_admin_order_meta', 10, 1 );
function my_custom_checkout_field_display_admin_order_meta($order){
echo '[p][strong]'.__('Мое поле').':[/strong] ' . get_post_meta( $order-] id, 'Мое поле', true ) . '[/p]';
}
===============================
Эти плейлисты могут быть Вам полезны:
Уроки WordPress :
• WordPress
• WooCommerce
===============================
По вопросам сотрудничества:
Instagram: / weblider96
Телефон: +380977607275
Всем спасибо !
Автор: Ягодин Николай
Удалось ли Вам Добавить новое кастомное поле на страницу оформления заказа в WooCommerce ?
Спасибо, то что нужно))
Спасибо.
Благодарю. Подскажите, пожалуйста, хочу добавить кастомное поле в метод доставки, чтобы оно открывалось только тогда, когда пользователь выбирает метод доставки радио кнопкой. Куда именно вставить этот код, понимаю, что хук другой
Спасибо за вопрос. Для решения вашей задачи нужно сделать немного по другому. Напишите мне под видео есть контакты. Спасибо