• Resolved staler75

    (@staler75)


    the fields ordering/sorting / priority is all messed up i can’t get it working.
    i tried different themes but all same problem, in the backend i can order the fields and save it without errors but as soon i test it in the front end it looks all messed up.

    for instance i places firstname and lastname on top but it shows somewhere at the botten, this is the same for billing, shipping and extra fields i tried ceveral options like thes 2 but nothing happens

    add_filter("woocommerce_checkout_fields", "custom_override_checkout_fields", 1);
    function custom_override_checkout_fields($fields) {
        $fields['billing']['billing_first_name']['priority'] = 10;
        $fields['billing']['billing_last_name']['priority'] = 20;
        $fields['billing']['billing_company']['priority'] = 30;
        $fields['billing']['billing_country']['priority'] = 40;
        $fields['billing']['billing_state']['priority'] = 50;
        $fields['billing']['billing_address_1']['priority'] = 60;
        $fields['billing']['billing_address_2']['priority'] = 70;
        $fields['billing']['billing_city']['priority'] = 90;
        $fields['billing']['billing_postcode']['priority'] = 80;
        $fields['billing']['billing_email']['priority'] = 100;
        $fields['billing']['billing_phone']['priority'] = 110;
        return $fields;
    }
    
    add_filter( 'woocommerce_default_address_fields', 'custom_override_default_locale_fields' );
    function custom_override_default_locale_fields( $fields ) {
        $fields['state']['priority'] = 5;
        $fields['address_1']['priority'] = 6;
        $fields['address_2']['priority'] = 7;
        return $fields;
    }
    add_filter(‘woocommerce_billing_fields’, ‘my_custom_field’, 2000, 2);
    function my_custom_field($fields, $country){
            
    }

    and this

    // Billing Fields.
    
    add_filter( 'woocommerce_billing_fields' , 'woocommerce_billing_fields_custom' );
    
    function woocommerce_billing_fields_custom( $fields ) {
    	$fields['billing']['billing_first_name']['priority'] = 10;
    	$fields['billing']['billing_last_name']['priority'] = 20;
    	$fields['billing']['billing_company']['priority'] = 30;
    	$fields['billing_phone']['required'] = false;
    	$fields['billing_phone']['maxlength'] = 100;
    	$fields['billing_state']['class'] = array( 'form-row-first' );
    	$fields['billing_postcode']['maxlength'] = 50;
    	$fields['billing_postcode']['class'] = array( 'form-row-last' );
    	//Order Billing fields
    	$fields['billing_email']['priority'] = 80;
    	$fields['billing_phone']['priority'] = 100;
    	$fields['billing_country']['priority'] = 60;
    	
    	return $fields;
    }
    
    // Shipping Fields.
    add_filter( 'woocommerce_shipping_fields' , 'woocommerce_shipping_fields_custom' );
    
    function woocommerce_shipping_fields_custom( $fields ) {
    	$fields['shipping_state']['class'] = array( 'form-row-first' );
    	$fields['shipping_postcode']['maxlength'] = 4;
    	$fields['shipping_postcode']['class'] = array( 'form-row-last' );
    	//Order Shipping fields
    	$fields['shipping_country']['priority'] = 100;
    	
    	return $fields;
    }
    
    add_filter( 'woocommerce_default_address_fields', 'woocommerce_default_address_fields_reorder' );
     
    function woocommerce_default_address_fields_reorder( $fields ) {
    	$fields['address_1']['priority'] = 60;
    	$fields['address_2']['priority'] = 50;
    	
    	return $fields;
    }
Viewing 3 replies - 1 through 3 (of 3 total)
Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘sorting / ordering of fields fails’ is closed to new replies.