woocommerce postcode not required

WooCommerce Docs

Documentation, Reference Materials, and Tutorials for your WooCommerce products

Checkout Field Editor

The Checkout Field Editor provides an interface to add, edit and remove fields shown on your WooCommerce checkout page.

Installation ↑ Back to top

  1. Download the .zip file from your WooCommerce account.
  2. Go to: WordPress Admin > Plugins > Add New and Upload Plugin with the file you downloaded with Choose File.
  3. Install Now and Activate the extension.

Setup and Configuration ↑ Back to top

Go to: WooCommerce > Checkout Fields.

Fields ↑ Back to top

There are three sets of Fields you can edit:

  • Billing – Payment and billing address section of checkout (payment must be enabled)
  • Shipping – Shipping section of checkout (shipping must be enabled)
  • Additional – Appear after the billing and shipping sections of checkout, next to order notes (order notes must be enabled)

Columns ↑ Back to top

  • Name – Name of field, which is used as the meta key to save info. Must be unique.
  • Type – Field type. See ‘Types’ below.
  • Label – Label for input shown in checkout.
  • Placeholder / Option values – Placeholder text for inputs OR the options for select boxes, radios etc. Values should be separated by a pipe (|). Two scenarios are explained below:
  • An options list starting with a pipe creates an empty choice. Used in conjunction with a required select field, it will force the user to choose a valid option.
  • An options list without a pipe as first character will make the first option in the list the default choice whether the field is required or not.
  • Position – Left, right or full width. This applies CSS styling to the box.
  • Validation rules – Choose validation rules to apply: Email, number, and required are supported.
  • Display Options – Option to display fields in thank you emails, thank you pages, or on order detail pages. (CFE 1.1.8+)
  • Types ↑ Back to top

    These custom types are supported:

    • Text – standard text input.
    • Password – password text input.
    • Textarea – A textarea field.
    • Select – A dropdown/select box. Requires options set.
    • Multi-select – A multi-select box. Requires options set.
    • Radio – A set of radio inputs. Requires options set.
    • Checkbox – A checkbox field.
    • Date picker – A text field with a JavaScript data picker attached.
    • Heading – Adds a heading to allow separating fields into groups.

    Editing core fields ↑ Back to top

    In the Billing and Shipping sections, there are core fields highlighted in purple.

    Disabled fields

    Some core fields have options disabled and cannot be changed:

    • Names of core fields
    • Types of special core fields (country and state)
    • Fields that change dynamically based on the chosen country of a user (address 1, address 2, city, state, postcode) cannot have custom validation rules, e.g. Required fields are determined by locale, not by your settings.

    With those limitations in mind, you can:

    • Change the labels and position of the fields.
    • Disable them by ticking the checkboxes per-row and clicking the ‘Disable/Remove’ button. Disabled fields are then greyed out. Use at your own risk.

    Re-enable core fields by checking the rows and pressing the ‘enable’ button.

    Adding and editing custom fields ↑ Back to top

    From the bottom of the fields table:

    1. Select the Add Field button.

    Once a field is added, a blank row appears.

    2. Enter your text and preferences.

    3. Save Changes.

    Resetting checkout fields ↑ Back to top

    To reset your fields back to the original settings:

    1. Go to: WooCommerce > Status > Tools.
    2. Scroll down to Checkout Fields.
    3. Select the Reset Checkout Fields button. Any customizations to your fields will be removed.

    Field display and checking values ↑ Back to top

    Consider the following date picker field:

    In checkout, this is displayed:

    After placing an order, the field will be visible in the Admin section ‘Custom Fields’ panel:

    Usage ↑ Back to top

    On the front end, customers can see and enter info in a custom field displayed during checkout. For example, Delivery Date and then use the datepicker to select one:

    Or enter text under Food Allergies:

    Customizations ↑ Back to top

    Extending the Date Picker Year Range ↑ Back to top

    It is possible to extend the year selection range of the date picker fields by placing the following code in your child theme’s “functions.php” file, or in the designated area of your theme’s “functions.php” file:

    This adjusts the year selector of the date picker to expand by 40 years.

    Setting a default value for a radio button field ↑ Back to top

    It’s possible to set a default value for a radio button checkout field by placing the following code in your child theme’s “functions.php” file, or in the designated area of your theme’s “functions.php” file:

    The above snippet assumes that the field is a “billing” field, that the field name is “test_radio” and that the desired default value is “one.”

    Add custom fields to WebHooks API ↑ Back to top

    Select Field Placeholder text ↑ Back to top

    You can add placeholder text when using the Select field by adding 2 || to separate the placeholder from the option values.
    For example:
    Placeholder || Option 1 | Option 2 | Option 3

    Questions & Support ↑ Back to top

    Have a question before you buy? Please fill out this pre-sales form.

    Already purchased and need some assistance? Get in touch with a Happiness Engineer via the Help Desk.

    Relevant Links

    Installing and Activating WooThemes Licenses

    How to Get Help

    WooCommerce – the most customizable eCommerce platform for building your online business.

    Woocommerce postcode not required

    So I followed the instructions from: Link to change required field of a post code.

    Unfortunately instead of changing the required it makes a second field: Image

    Can anyone point out what is the issue here?

    That happens because you are using woocommerce_billing_fields hook filter that is managing only billing fields for a shipping postcode field…

    You could try to use woocommerce_shipping_fields filter hook, but it will not work because the postcode checkout field is a very special field that can only be set to not required using the following hooked function:

    So as you can see it acts on both billing and shipping postcode fields. Apparently is not possible to make it only for shipping postcode field only for both billing and shipping fields.

    Leave a Reply

    Your email address will not be published. Required fields are marked *