Directory / plugin
Fieldora Checkout for WooCommerce
v1.1.3 ยท by Theodore Sfakianakis
Complete WooCommerce checkout customization. Add, edit, remove fields with 20+ field types for Classic checkout.
About this plugin
๐ฏ WooCommerce Checkout Fields Customization Plugin
Fieldora Checkout for WooCommerce gives you complete control over your WooCommerce checkout. Add unlimited custom fields, edit default fields, rearrange with drag-and-drop, and choose from 20+ field types.
Note: This plugin currently supports Classic WooCommerce checkout only. Block checkout support is planned for a future release.
Key Features
โ Complete Checkout Customization
- Add custom fields to Billing, Shipping, or Additional Information sections
- Edit ALL default WooCommerce fields (label, placeholder, required status, etc.)
- Drag-and-drop field reordering with real-time priority updates
- Enable/disable fields with toggle switches
- Visual distinction between default and custom fields
- Delete protection for required WooCommerce fields
โ 20 Field Types for Classic Checkout
- Text – Single-line text input
- Number – Numeric input with validation
- Hidden – Hidden field for storing data
- Password – Password input field
- Email – Email input with validation
- Phone (tel) – Phone number input with validation
- Radio – Radio button options
- Textarea – Multi-line text area
- Select – Dropdown select menu
- Multi-Select – Multi-selection dropdown
- Checkbox – Single checkbox
- Checkbox Group – Multiple checkboxes returning array
- DateTime Local – Date and time picker
- Date – Date picker
- Month – Month picker
- Time – Time picker
- Week – Week picker
- URL – URL input with validation
- Heading – Display-only section heading (H3)
- Paragraph – Display-only paragraph text
โ Comprehensive Field Validation
Built-in Type Validation:
* Number: Numeric-only input
* Email: Valid email format
* Phone: 7-15 digit phone validation
* URL: Valid URL format
Custom Validation Rules:
* Postcode: Postal code format (3-10 alphanumeric)
* State: Valid WooCommerce state code
* Phone (strict): Strict international phone format
Features:
* Multiple validation rules per field
* Custom error messages with field labels
* Server-side validation on checkout
* Developer hook for custom validation rules
โ Field Visibility Controls
Granular control over where fields appear:
* Order Details Page – Show on customer order details and thank you page
* Admin Emails – Include in admin notification emails
* Customer Emails – Include in customer order emails
All visibility settings respected across:
* Admin order edit page
* Customer My Account Order Details
* Thank You page
* New Order emails (admin)
* Processing Order emails (customer)
* Completed Order emails (customer)
โ Order Integration
- Automatic field value saving on checkout
- Type-based sanitization (email, tel, number, url, textarea, arrays)
- Field label storage for proper display
- Support for array values (multi-select, checkbox group)
- Display in admin order page (billing & shipping sections)
- Display in customer order details page
- Display in WooCommerce emails
- Proper formatting for arrays, dates, URLs, multi-line text
โ One-Click Reset Feature
- Reset individual sections (Billing, Shipping, or Additional)
- Delete all custom fields in selected section
- Restore default WooCommerce field configurations
- Confirmation dialog with safety check
- Success notifications
โ Translation Ready
- All strings wrapped in translation functions
- Text domain:
smart-checkout-fields-manager - Compatible with Loco Translate, WPML, and Polylang
- RTL language support
- Ready for community translations
โ Developer-Friendly
Powerful hooks for developers:
* Actions: scfm_init, scfm_field_deleted, scfm_after_field_save, scfm_validate_field
* Filters: scfm_sanitize_field_data, scfm_checkout_fields, scfm_field_config, scfm_field_value
* Full documentation in code
* Easy to extend with custom field types
Use Cases
- E-Commerce Stores: Collect delivery instructions, gift messages, company VAT numbers
- B2B Shops: Add business license fields, tax IDs, purchase order numbers
- Subscription Services: Collect subscription preferences, renewal dates
- Event Tickets: Add attendee information, dietary requirements
- Custom Products: Collect personalization details, custom specifications
- Multi-Vendor: Add vendor-specific information fields
Why Choose Fieldora Checkout for WooCommerce?
โ 20+ Field Types – Wide selection of field types
โ Drag & Drop – Intuitive interface for field management
โ No Coding Required – User-friendly admin interface
โ Developer Friendly – Extensive hooks and filters
โ Translation Ready – Works in any language
โ Active Development – Regular updates and improvements
Premium Features (Coming Soon)
- Conditional Logic – Show/hide fields based on other field values
- Field Dependencies – Make fields required based on conditions
- Import/Export – Backup and share field configurations
- Field Templates – Pre-built field sets for common scenarios
- Advanced Field Types – Signature, File Upload, Color Picker, Range Slider
- Multi-Step Checkout – Split checkout into multiple steps
- Field Analytics – Track field completion rates
- Priority Support – Fast email support
Want these features now? Support development to help prioritize!
Developer Documentation
Available Hooks
Actions:
`php
// Plugin initialization
do_action( ‘scfm_init’ );
// After field deletion
do_action( ‘scfm_field_deleted’, $section, $field_id );
// After field value saved to order
do_action( ‘scfm_after_field_save’, $field_id, $value, $order_id );
// Custom field validation
do_action( ‘scfm_validate_field’, $field_id, $field, $value, $errors );
`
Filters:
`php
// Modify sanitized field data
$sanitized = apply_filters( ‘scfm_sanitize_field_data’, $sanitized, $data );
// Modify default WooCommerce fields
$fields = apply_filters( ‘scfm_default_woocommerce_fields’, $fields, $section );
// Modify checkout fields before rendering
$fields = apply_filters( ‘scfm_checkout_fields’, $fields );
// Modify individual field configuration
$wc_field = apply_filters( ‘scfm_field_config’, $wc_field, $field_id, $field );
// Modify field value before saving
$value = apply_filters( ‘scfm_field_value’, $value, $field_id, $field, $order_id );
`
Adding Custom Field Types
Use the scfm_field_config filter to add custom field types:
`php
add_filter( ‘scfm_field_config’, ‘my_custom_field_type’, 10, 3 );
function my_custom_field_type( $wc_field, $field_id, $field ) {
if ( $field[‘type’] === ‘my_custom_type’ ) {
$wc_field[‘type’] = ‘text’;
$wc_field[‘custom_attributes’] = array(
‘data-custom-type’ => ‘my_custom_type’
);
}
return $wc_field;
}
`
Custom Validation Rules
Add custom validation using the scfm_validate_field action:
`php
add_action( ‘scfm_validate_field’, ‘my_custom_validation’, 10, 4 );
function my_custom_validation( $field_id, $field, $value, $errors ) {
if ( $field[‘type’] === ‘text’ && strlen( $value ) < 5 ) {
$errors->add( ‘validation’, ‘Minimum 5 characters required!’ );
}
}
`
Full developer documentation available on GitHub.
Support
- ๐ง Email: [email protected]
- ๐ Bug Reports: GitHub Issues
- ๐ฌ Questions: GitHub Discussions
- ๐ฐ Donate: PayPal
Donations
If this plugin helped your WooCommerce store, consider supporting its development:
Why donate?
* โ Buy me a coffee
* ๐ Fund premium features development
* ๐ Faster bug fixes and support
* ๐ Better documentation
* โค๏ธ Show appreciation
Every contribution helps keep this plugin free and actively maintained!
Made with โค๏ธ by Theodore Sfakianakis (irmaiden)