Học WordPress + AI / WordPress cho người VIỆT !
WPShare247

Học wordpress cho người mới bắt đầu

  • Bắt đầu
    • Học WordPress
    • Elementor
    • WooCommerce
    • Tạo WordPress
    • Học WordPress kiểu mới 2025
    • Học PHP cơ bản
    • Tạo Website bằng WordPress
    • Quản trị WordPress
    • Sửa lỗi WordPress
    • Theme wordpress
    • Plugin WordPress
    • Hàm PHP
    • Seo WordPress
    • Bảo mật WordPress
    • Html & Css
    • Javascript và jQuery
    • Hướng dẫn lập trình
  • Video
    • Video TikTok
    • Video Shorts
  • Kho plugin
  • Tải Web Miễn Phí
  • Công cụ
    • Kiểm tra web WordPress
    • WordPress theme gì?
    • Check IP Website
    • Kiểm tra Tên Miền
    • Kiểm Tra SSL
    • Tạo File Disavow Google
    • Tạo QR Code
  • Giới thiệu
    • Khuyến Mãi
  • Đăng nhập
X
☰

Trang chủ » WooCommerce » Hướng dẫn thêm trường chọn Ngày Tháng Năm Datepicker trang Thanh Toán WooCommerce

📌 Mới: Bạn có thể 🧠 đặt câu hỏi cho AI về nội dung bài viết này ở cuối trang!

Hướng dẫn thêm trường chọn Ngày Tháng Năm Datepicker trang Thanh Toán WooCommerce

Xuất bản vào 27/10/2021 bởi Chinsu Man Xem: 3306
Shares
ChatGPT ChatGPT
Share
Share
Pin

CHƯƠNG TRÌNH GIẢM 50% GIÁ TẤT CẢ CÁC GÓI HOSTING WORDPRESS => Link giảm 50%

Bài viết hướng dẫn có chứa CODE - Copy và sử dụng chúng sẽ tiện hơn cho bạn.

1. Trường hay Field Datepicker là gì?

Là trường nhập liệu dạng textbox, thay vì cho khách hàng nhập bằng tay. Chúng ta sử dụng field Datepicker giúp tránh sai định dạng ngày tháng năm. Datepicker WordPress là jQuery UI được tích hợp sẵn, khi nào cần dùng chúng ta có thể gọi và sử dụng ngay.

Hướng dẫn thêm trường chọn Ngày Tháng Năm Datepicker trang Thanh Toán WooCommerce

🌱 Nếu thấy bài viết hữu ích, bạn có thể ủng hộ tác giả bằng cách nhấn vào quảng cáo bên dưới — như một donate miễn phí. Bạn không mất gì nhưng chúng tôi sẽ có thêm chi phí để duy trì và vận hành website. Cảm ơn bạn! 🙏

2. Cách thêm field Datepicker vào trang Checkout WooCommerce

Trong ví dụ này tôi sẽ hướng dẫn các bạn thêm 1 field mới vào trang Thanh Toán của website bán hàng sử dụng WooCommerce.

Mặc định khi khách hàng Checkout sẽ có một số field lấy thông tin như Họ tên, Quốc gia, Địa chỉ …. WooCommerce hỗ trợ chúng ta một số action giúp dễ dàng thêm hay bớt các trường này. Cụ thể trong bài viết này tôi sẽ chia sẻ cách thêm trường chọn ngày khách cần giao đơn hàng như sau:

Hướng dẫn thêm trường chọn Ngày Tháng Năm Datepicker trang Thanh Toán WooCommerce

Đoạn code sau chỉ có tác dụng khi Website bán hàng bạn đã cài plugin WordPress WooCommerce. Để làm được bạn cần copy các đoạn mã sau vào file functions.php trong theme nhé.

2.1 Gọi thư viện jQuery UI Datepicker trong WordPress

add_action( 'wp_enqueue_scripts', 'wpshare247_datepicker' );
function wpshare247_datepicker() {
    if( is_admin() || ! is_checkout() ) return;
    wp_enqueue_script( 'jquery-ui-datepicker' );
}

2.2 Thêm mới 1 field vào trang thanh toán WooCommerce

//2. Thêm 1 field vào trang thanh toán
add_filter( 'woocommerce_checkout_fields' , 'wpshare247_add_custom_checkout_field', 9999999 );
function wpshare247_add_custom_checkout_field( $fields ) {
    
    //New field---------
    $fields['billing']['wpshare247_my_date'] = array(
                                        'label'     => __('Ngày giao hàng', 'woocommerce'),
                                        'placeholder'   => date('d/m/Y'),
                                        'required'  => true, // Bắt buộc nhập hay không
                                        'class'     => array('form-row-wide wpshare247-datepicker'),
                                        'clear'     => true,
                                        'priority'  => 20	// Thứ tự field trong cùng 1 nhóm
      );
      
      // Tiếp tục thêm field khác giống như trên nếu muốn
    
    return $fields;
}

2.3 Gọi thư viện jQuery datepicker

add_action( 'wp_head', 'wpshare247_add_this_script_footer' );
function wpshare247_add_this_script_footer(){
?>
    <script>
        //Add new datepicker
        jQuery(document).ready(function(){
            jQuery('.wpshare247-datepicker input').datepicker({ dateFormat: 'dd/mm/yy' });
        });
    </script>
<?php
}

dateFormat là định dạng trả về của ngày tháng năm, bạn có thể thay đổi thành: dd-mm-yy hoặc yy-mm-dd tùy theo nhu cầu sử dụng. dd là ngày, mm là tháng, yy là năm.

2.4 Kiểm tra khi field dữ liệu là bắt buộc ( required = true )

add_action('woocommerce_checkout_process', 'wpshare247_checkout_field_process_save');
function wpshare247_checkout_field_process_save() {
    if ( ! $_POST['wpshare247_my_date'] )
        wc_add_notice( __( 'Please enter something into this new shiny field.' ), 'error' );
}

Nếu tại bước 2.2 bạn không khai báo required hoặc required => false thì có thể bỏ qua bước này.

2.5 Lưu dữ liệu cho field mới

add_action( 'woocommerce_checkout_update_order_meta', 'wpshare247_custom_checkout_field_update_order_meta' );
function wpshare247_custom_checkout_field_update_order_meta( $order_id ) {
    if ( ! empty( $_POST['wpshare247_my_date'] ) ) {
        update_post_meta( $order_id, 'wpshare247_my_date', sanitize_text_field( $_POST['wpshare247_my_date'] ) );
    }
}

Như vậy bằng cách thêm 5 đoạn code trên bạn đã thêm được 1 field mới vào trang thanh toán rồi. Vậy bạn có nghĩ rằng nếu tôi muốn xóa các field không cần thiết mặc định của WooCommerce thì làm như thế nào không?

Để xóa hay remove field mặc định bạn xem đoạn code tại bước dưới đây nhé.

3. Xóa field khỏi trang Checkout WooCommerce

WooCommerce cũng hộ trợ chúng ta loại bỏ các trường không cần thiết thông qua filter woocommerce_checkout_fields kết hợp thêm hàm unset trong php chúng ta có thể làm điều đó dễ dàng như sau:

add_filter( 'woocommerce_checkout_fields' , 'wpshare247_wc_checkout_fields', 9999999 );
function wpshare247_wc_checkout_fields( $fields ) {

    //Xóa các field không cần dùng, đây chỉ là ví dụ, bạn hãy tìm đúng ID của field trước khi xóa nhé
    // Billing fields
    unset( $fields['billing']['billing_company'] );
    unset( $fields['billing']['billing_email'] );
    unset( $fields['billing']['billing_phone'] );
    unset( $fields['billing']['billing_state'] );
    unset( $fields['billing']['billing_first_name'] );
    unset( $fields['billing']['billing_last_name'] );
    unset( $fields['billing']['billing_address_1'] );
    unset( $fields['billing']['billing_address_2'] );
    unset( $fields['billing']['billing_city'] );
    unset( $fields['billing']['billing_postcode'] );

    // Shipping fields
    unset( $fields['shipping']['shipping_company'] );
    unset( $fields['shipping']['shipping_phone'] );
    unset( $fields['shipping']['shipping_state'] );
    unset( $fields['shipping']['shipping_first_name'] );
    unset( $fields['shipping']['shipping_last_name'] );
    unset( $fields['shipping']['shipping_address_1'] );
    unset( $fields['shipping']['shipping_address_2'] );
    unset( $fields['shipping']['shipping_city'] );
    unset( $fields['shipping']['shipping_postcode'] );

    // Order fields
    unset( $fields['order']['order_comments'] ); 
    
    return $fields;
}

Tham khảo thêm ID của các nhóm Field bên dưới:

Billing Fields (Thông tin thanh toán)

  • billing_first_name
  • billing_last_name
  • billing_company
  • billing_country
  • billing_address_1
  • billing_address_2
  • billing_city
  • billing_state
  • billing_postcode
  • billing_phone
  • billing_email

Shipping Fields (Thông tin giao hàng)

  • shipping_first_name
  • shipping_last_name
  • shipping_company
  • shipping_country
  • shipping_address_1
  • shipping_address_2
  • shipping_city
  • shipping_state
  • shipping_postcode

Order Fields (Thông tin mở rộng)

  • order_comments

Account Fields (Thông tin tài khoản)

  • account_username
  • account_password

4. Sửa tiêu đề Field (Label)

Trường hợp bạn cần thay đổi tiêu đề các trường như ví dụ bên dưới thì làm như thế nào? Cụ thể Tên sẽ đổi bằng Tên khách hàng

Hướng dẫn thêm trường chọn Ngày Tháng Năm Datepicker trang Thanh Toán WooCommerce

Bạn có thể làm bằng đoạn code sau:

add_filter( 'woocommerce_checkout_fields' , 'wpshare247_wc_checkout_field_change_label', 9999999 );
function wpshare247_wc_checkout_field_change_label( $fields ) {
    //Tìm và thay đổi giá trị của label như bên dưới
    $fields['billing']['billing_first_name']['label'] = 'Tên khách hàng';   
    
    return $fields;
}

5. Sắp xếp thứ tự các field

Bạn hoàn toàn có thể điều khiển thứ tự các trường lại theo ý muốn của mình. Trước khi làm điều đó tôi muốn cho các bạn biết thứ tự mặc định hay còn gọi là Priority mà WooCommerce qui định.

  • First name – 10
  • Last name – 20
  • Company name – 30
  • Country – 40
  • Street address – 50
  • Apartment, suite, unit etc. (optional) – 60
  • Town / City – 70
  • State – 80
  • Postcode / ZIP – 90
  • Phone – 100
  • Email – 110

Bạn hãy cố gắng thay đổi các các con số Priority của các field cho đến khi bạn vừa ý bằng code sau:

add_filter( 'woocommerce_checkout_fields' , 'wpshare247_sort_checkout_fields', 9999999 );
function wpshare247_sort_checkout_fields( $fields ) {
    $fields['billing']['billing_email']['priority'] = 22;
    $fields['billing']['billing_phone']['priority'] = 23;
    return $fields;
}

6. Bỏ hoặc thêm bắt buộc nhập cho các field

Đôi khi chúng ta cần bỏ và thêm bắt buộc nhập liệu trường chúng ta cần làm như sau:

add_filter( 'woocommerce_checkout_fields' , 'wpshare247_required_checkout_fields', 9999999 );
function wpshare247_required_checkout_fields( $fields ) {
    $fields['billing_phone']['required'] = false; // true nếu muốn bắt buộc nhập
    //Làm tương tự cho các trường khác--------------
    return $fields;
}

Như vậy tôi vừa giới thiệu sơ lược cách thêm xóa sửa các field trong trang checkout của Website thương mại điện tử bán hàng dùng WooCommerce. Hi vọng bài viết sẽ giúp ích được cho các bạn mới học WordPress.

CHƯƠNG TRÌNH GIẢM 50% GIÁ TẤT CẢ CÁC GÓI HOSTING WORDPRESS => Link giảm 50%

❓ Hỏi AI về nội dung bài viết

Tóm tắt nội dung chính Gợi ý mục quan trọng Giải thích mục 1 rõ hơn Viết lại đoạn văn cho dễ hiểu Rút gọn văn bản mà vẫn đủ ý Thêm ví dụ minh hoạ cho đoạn 1 Lọc keyword từ khóa bài viết Lọc thuật ngữ Dịch bài viết sang: Tiếng Anh
Nếu bài viết chưa giải đáp hết thắc mắc của bạn, hãy hỏi WPSHARE247 AI – trợ lý thông minh sẵn sàng hỗ trợ ngay trong nội dung bài viết.

Bạn muốn tích hợp chức năng Hỏi AI trực tiếp dưới mỗi bài viết trên website? Hãy liên hệ dịch vụ thiết kế web tại Website366.com để được hỗ trợ triển khai nhanh chóng và chuyên nghiệp.

Shares
ChatGPT ChatGPT
Share
Share
Pin
← Bài cũ hơn → Bài tiếp theo
checkout fieldDatepickerwoocommerce
Bài viết liên quan
  • Thử kết nối API trong WordPress cho người mới học code (cập nhật 2025)

    Thử kết nối API trong WordPress cho người mới học code (cập nhật 2025)

  • Filter không còn hoạt động trong WooCommerce Blocks: Cảnh báo quan trọng dành cho Developer

    Filter không còn hoạt động trong WooCommerce Blocks: Cảnh báo quan trọng dành cho Developer

  • Hướng dẫn cách thêm một Section mới trong WooCommerce Settings

    Hướng dẫn cách thêm một Section mới trong WooCommerce Settings

  • Hướng dẫn cách tích hợp Ui Slider jQuery vào Website WordPress

    Hướng dẫn cách tích hợp Ui Slider jQuery vào Website WordPress

Học thiết kế Web WordPress

Download WordPress

Tải bản WordPress mới nhất

Tiếng Việt: Tải WordPress Mới

Quốc tế: Tải WordPress Mới

Liên kế MXH của WPShare247

Tìm thấy những kiến thức mới từ WPShare247

Giảm 50% Hosting

Xem chi tiết giảm giá 50% gói lưu trự Hosting tại đây => Link giảm 50%

Cách tạo Web bán hàng Bằng Flatsome

https://www.youtube.com/watch?v=gnT8Dn_KiXU

Video Tiktok mới nhất

@hocwordpress SSL bằng Plug-in Wordpress Really Simple SSL giúp bảo mật đúng cách hơn, tránh tình trạng bảo mật ảo HTTPS #wpshare247 #wordpress #plugin #ssl #https ♬ nhạc nền - Học WordPress - WPSHARE247.COM

Cách tạo Website WordPress 2025

https://www.youtube.com/watch?v=HtbtsH8q-KU

Bộ WIDGETS WS247 Đa Năng

Giúp bạn Thiết kế Website WordPress giống mẫu 99% trong thời gian ngắn nhất (Có bản nâng cấp mới V2). Download tại đây

 

Xem chi tiết tại đây  https://wpshare247.com/chia-se-bo-field-widget-giup-ban-thiet-ke-website-wordpress-nhanh-hon

MUA HOSTING – TẶNG BUỔI HỌC WP

Tặng 03 buổi (Mỗi buổi 30 phút) hỗ trợ miễn phí, tất cả các chuyên đề nào về học thiết kế website bằng WordPress khi mua Hosting và Tên miền => tại đây [ Có thể liên hệ bất cứ giờ nào để hỗ trợ học WP ]

Tôi đang cần...
Cách làm blog Plugin Wordpress Bảo mật Wordpress Seo với Wordpress Lỗi Wordpress WooCommerce

MUA HOSTING – TẶNG BUỔI HỌC WP

Chủ đề

  • Code WordPress
  • Hàm WordPress
  • Hướng dẫn WordPress
  • Theme wordpress
  • WooCommerce
  • Seo WordPress
  • Html & Css
  • Javascript và jQuery
  • Plugin WordPress
  • Hướng dẫn lập trình

Tag

add_action (2) add_filter (2) admin code (2) alt (2) Block Theme (2) cart (4) Contact Form 7 (8) css (4) custom post type (2) cài wordpress (2) danh mục sản phẩm (2) elementor (2) elementor free (2) filter (2) flatsome (2) functions.php (2) google font (2) hosting (2) html css (2) hướng dẫn dùng plugin (4) học wordpress (7) javascript (5) jquery (3) localhost (2) Loop (2) mysql (4) ngôn ngữ (2) phpmyadmin (3) plugin (4) plugin wordpress (2) Product (4) SMTP (2) Sản phẩm (3) Template page (2) theme option (2) Theme Wordpress (3) widget (2) woocommerce (25) wordpress (5) WordPress 2025 (2) wp-config (2) wp_enqueue_scripts (2) WP_Query (6) xampp (4) Yoast SEO (2)
Về WPShare247

Học wordpress cho người mới bắt đầu.

WPShare247 là blog chia sẻ các kiến thức về WordPress, sửa chữa lỗi wordpress, giới thiệu theme và plugin wordpress mới nhất. Đào tạo khóa học thiết kế Website bằng WordPress.

Menu
  • Trang chủ
  • Giới thiệu
  • Blog
  • Plugin WordPress
  • Liên hệ
Chủ đề wordpress
  • Sửa lỗi WordPress
  • Plugin WordPress
  • Theme wordpress
  • Seo WordPress
  • WooCommerce

Copyright © 2025 WPSHARE247. All Rights Reserved.
Một sản phẩm của WEB 366

  • Thiết kế web bởi Website366.com
  • Thiết kế website chuyên nghiệp TBAY.VN
  • Thiết kế website bán hàng