Fieldwright

Guides

Checkout field editor stopped working after switching to the block checkout?

Your extra checkout fields were there yesterday, and today the checkout has only WooCommerce's own. The plugin is still active and its settings are still saved. Almost always, the checkout page changed underneath it.

What happened

WooCommerce has two checkouts. The older one is a shortcode, [woocommerce_checkout], drawn by PHP. The newer one is the Checkout block, drawn in the browser. New stores get the Checkout block by default, and a theme switch, a page rebuild or a WooCommerce setup wizard can move an existing store onto it too.

Most checkout field editors were written for the shortcode checkout. They add their fields through PHP filters that the Checkout block never reads, so the fields disappear from the page. Their settings screen still works and still saves, which is what makes this confusing.

Check which checkout you have

  1. Go to Pages and open your Checkout page in the editor.
  2. If you see one large Checkout block with sections inside it, you are on the block checkout. If you see a shortcode block with [woocommerce_checkout] in it, you are on the classic one.

Your two options

  • Go back to the shortcode checkout. Replace the Checkout block with the shortcode and your old fields come back. You give up what the block does well, and anything new WooCommerce builds for the checkout will be for the block.
  • Use a field editor built for the block. Fieldwright works on the Checkout block, and only on it. It uses WooCommerce's own Additional Checkout Fields API wherever that API can carry a field, so its fields keep working through WooCommerce updates.

Moving your fields across

  1. Note each field the old plugin added: its label, type, where it sat and whether it was required.
  2. In WooCommerce → Fieldwright, add each one again under the matching section. The preview shows the checkout as you go.
  3. Rename, hide or make optional any of WooCommerce's own fields the old plugin used to change. They sit in the same list as yours.
  4. Save, place a test order, and check the answers on the order screen and in the order email.
  5. Keep the old plugin until you no longer need it to read past orders. Answers it saved stay on those orders, but it may be what shows them on the order screen.