Share code

Chỉnh sửa, hiển thị và loại bỏ các field không cần thiết trong trang checkout woocommerce

Để loại bỏ các field không cần thiết trong trang thanh toán bạn chỉ cần coppy đoạn code bên dưới vào file functions.php là được nhé

function custom_checkout_woocommerce($fields)
{
    //billing
    $fields['billing']['billing_first_name'] = array(
        'label' => __('Họ và tên', 'devvn'),
        'placeholder' => _x('Họ và tên', 'placeholder', 'devvn'),
        'required' => true,
        'class' => array('form-row-first'),
        'clear' => true,
        'priority' => 10
    );
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_company']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_state']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_address_2']);
    $fields['billing']['billing_phone']['priority'] = 20;
    $fields['billing']['billing_phone']['class'] = array('form-row-last');
    $fields['billing']['billing_phone']['placeholder'] = _x('Số điện thoại', 'placeholder', 'devvn');
    $fields['billing']['billing_address_1']['class'] = array('form-row-wide');
    $fields['billing']['billing_address_1']['priority'] = 22;
 
    $fields['billing']['billing_email']['priority'] = 25;
    $fields['billing']['billing_email']['class'] = array('form-row-wide');
    $fields['billing']['billing_email']['required'] = false;
    //shipping
    $fields['shipping']['shipping_first_name'] = array(
        'label' => __('Họ và tên', 'devvn'),
        'placeholder' => _x('Họ và tên', 'placeholder', 'devvn'),
        'required' => true,
        'class' => array('form-row-first'),
        'clear' => true,
        'priority' => 10
    );
    unset($fields['shipping']['shipping_last_name']);
    unset($fields['shipping']['shipping_company']);
    unset($fields['shipping']['shipping_country']);
    unset($fields['shipping']['shipping_state']);
    unset($fields['shipping']['shipping_postcode']);
    unset($fields['shipping']['shipping_city']);
    unset($fields['shipping']['shipping_address_2']);
    $fields['shipping']['shipping_address_1']['class'] = array('form-row-wide');
    $fields['shipping']['shipping_phone'] = array(
        'label' => __('Số điện thoại', 'devvn'),
        'placeholder' => _x('Số điện thoại', 'placeholder', 'devvn'),
        'required' => true,
        'class' => array('form-row-last'),
        'clear' => true,
        'priority'  =>  20
    );
    uasort($fields['billing'], 'custom_sort_fields_by_order');
    uasort($fields['shipping'], 'custom_sort_fields_by_order');
    return $fields;
}
if(!function_exists('custom_sort_fields_by_order')) {
    function custom_sort_fields_by_order($a, $b)
    {
        if (!isset($b['priority']) || !isset($a['priority']) || $a['priority'] == $b['priority']) {
            return 0;
        }
        return ($a['priority'] < $b['priority']) ? -1 : 1;
    }
}
 
add_action( 'woocommerce_admin_order_data_after_shipping_address', 'display_admin_checkout_woocommerce', 10, 1 );
function display_admin_checkout_woocommerce($order){
    echo '<p><strong>'.__('Số ĐT người nhận').':</strong> <br>' . get_post_meta( $order->id, '_shipping_phone', true ) . '</p>';
}

add_filter('woocommerce_checkout_fields', 'custom_checkout_woocommerce', 9999999);