Advaced Product Fields (Product Addons) for WooCommerce allows you to add extra product options (form input fields) to your WooCommerce product pages. Whether you want to create a pizza configurator or add extra options, this plugin has got you covered!
Allow customers to personalize their product with a handful of extra choices, input fields, etc... These product addons can increase the final product price too. The extra form data submitted by the customer will be shown on the cart and checkout pages and will be saved on the backend order. The backend looks & works similar to ACF, so you are familiar with setting up the extra product options without a hassle. This plugin is the best modern free WooCommerce Product Addons alternative currently available. [» Demos](https://product-demo.studiowombat.com/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) | [» More info](https://studiowombat.com/plugin/advanced-product-fields-for-woocommerce/?utm_source=wporg&utm_medium=referral&utm_campaign=readme)
* Intuitive and beautiful backend builder which looks like Advanced Custom Fields * 10 different form elements to choose from: * **Text field** - A normal text input field to collect single-line text * **Text area** - To collect multi-line text * **Email** - An input field to accept only email addresses * **URL** - A text field to accept only links (URLs) * **Number** - A number field to accept both decimal or whole numbers * **Select (drop-down)** - A dropdown field to select one option from a list of options * **Checkboxes** - To choose one or more options * **Radio buttons** - To select one option from multiple options * **True/false** - A single "yes or no" checkbox, which you usually know from "accept the terms of conditions" fields * **Paragraph** - If you want to add static blocks of text in between input fields, this does the trick! * Conditional logic (show/hide fields based on other input fields) * Increase final product price: add a flat fee to your products depending on the field value(s) * Works with your WooCommerce tax settings * Optimized for speed and faster than other plugins in this genre * Visibility options: decide on which product(s) to show your fields * Works with both simple & variable products and also supports variable products over ajax * Frontend already translated in English, French, German, Spannish, and Dutch * Translation-ready for other languages <strong>👉 How can our plugin be useful and what should you use it for?</strong> WooCommerce only has limited features to display extra product options (often also called product addons) on your product pages. You can use their "variable products" which can add a few select (dropdown) lists to a product. But what if you're selling customizable t-shirts where customers can print their name on a t-shirt? Or what if you'd like your customers to build their own pizza where they can freely choose extra toppings? These product types can't be built with WooCommerce out-of-the-box. That's where our plugin comes in. It allows you to build more complex WooCommerce products that can easily be personalized by your customer. When should you use WooCommerce built-in variations versus our plugin? We wrote [a handy blog post](https://www.studiowombat.com/blog/when-to-use-a-plugin-for-product-options-in-woocommerce-versus-variations/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) to answer that question.<h3>👉️ What makes our plugin different from the competition?</h3> During your research, you may have seen other plugins that do (more or less) the same. Here is how we are different: ✅️ Our plugin is younger than the competition. It does not have to support older WooCommerce or WordPress versions, so you benefit from modern code. ✅️ Quality above quantity. We carefully choose what & how we implement features so the plugin remains lightweight and fast. ✅️ The plugin's frontend scripts are tiny (~7kb) and doesn't impact your SEO score. ✅️ Easy-to-use modern backend (based on ACF) which follows WordPress & WooCommerce standards. ✅️ Regular updates to stay on top of new WordPress & WooCommerce versions. ✅️ Our plugin runs fewer database queries because we've spent time optimizing how data is stored. ✅️ No nags! We do not like to plaster your WP admin with unnecessary ads or asking for a review. We do hope you leave a review to help us grow. We understand these statements are meaningless without <strong>additional proof</strong> to back them up, so here are a few links to help make up your mind: * Check out the WordPress [reviews here](https://wordpress.org/support/plugin/advanced-product-fields-for-woocommerce/reviews/). * [Plugin comparison](https://www.studiowombat.com/blog/best-woocommerce-product-addons-plugin/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) with screenshots and proof. * [Unofficial plugin test & rating](https://wphive.com/plugins/advanced-product-fields-for-woocommerce/). Having doubts? Just contact us with your questions!<h3>👉️ Why Studio Wombat?</h3> * ✅ A small but friendly team of WooCommerce professionals. * ✅ We do this full-time, we are not hobby-developers. * ✅ Over 50,000 happy customers. * ✅ We understand your success is our success, so we do our absolute best to help you out. * ✅ Dedicated support team. * ✅ Ahead of time, we test our plugins the latest WordPress and WooCommerce versions. * ✅ We choose quality over quantity: not every feature makes it in the plugins, but those that do are quality coded. * ✅ We care about your site speed.<h3>👉️ Requirements</h3> * WooCommerce 3.6.0 or higher * WordPress 4.7 or higher * PHP 5.6 or higher<h3>👉️ Limitations of the free version</h3> Our free version is great for small stores or stores that don't need to add many complex options (product addons) to their products. There are a few limitations of the free version that you should be aware about: * The free version does not integrate with 3rd party plugins such as WooCommerce Subscriptions or a multi-currency plugin (unless they write an integration). * The free version does not work with themes using Ajax technology for their product "add to cart" button. * The free version allows only allows you to add an extra flat fee ( = not quantity based) to your product price. If you need those features, you may consider our premium version. You can read ahead what's included with premium.<h3>👉️ Premium Features</h3> Everything from the free version, plus: * More field types: * **File upload** - allowing your customers to upload one or multiple files * **Image swatches** - multi and single choice options with images (and image zoom) * **Color swatches** - multi and single color options * **Text swatches** - text options * **Date** - adds a calendar picker * **Calculation** - adds an informative calculation (like "square meters") or a cost calculation. * **Image with quantities** - image swatches with quantity inputs underneath. * Content fields to add content to your product pages (no form inputs): * **Image** - to add extra images * **Text/HTML** - to add extra text, HTML, or even shortcodes * **Section** - to group fields in a section * Support for modern themes using "ajax add to cart" technology * The product image on the frontend can be changed when different options are selected * Set a minimum/maximum allowed number of selections on multi-select fields * More pricing options: formula-based pricing, quantity-based pricing, percentage-based pricing, value-based pricing, and character length pricing * You can also give discounts (negative pricing) on options * Repeatable fields: repeat fields if your visitors press an 'add new' button * Quantity-based fields: fields can repeat based on the quantity the customer selects * Works with page/product builders like Elementor, Oxygen, Beaver Builder, and Divi * Variable builder for more complex pricing possibilities * More options to attach one field group to multiple products at once (via product name, variation or category) * Support for multilingual stores through WPML or Polylang * Works with your WooCommerce tax settings * Support for multi-currency stores via the WOOCS plugin * More integrations with other plugins (such as WooCommerce Subscriptions) & popular themes. [See here](https://www.studiowombat.com/knowledge-base/which-plugins-and-themes-are-compatible-with-advanced-product-fields-for-woocommerce/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) * More options for text fields: min. and max. length, or HTML validation (regex pattern) * Actions & filters so you can extend the plugin with additional features * HTML output allowing you to more easily style certain aspects with CSS * Great tutorials to display a multi-step form, build a pizza configurator, etc ... * And more..! [Premium Demos](https://product-demo.studiowombat.com/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) | [Premium WP admin demo](http://wapf-admin.studiowombat.com/pro/wp-admin/?utm_source=wporg&utm_medium=referral&utm_campaign=readme) | [More info](https://studiowombat.com/plugin/advanced-product-fields-for-woocommerce/?utm_source=wporg&utm_medium=referral&utm_campaign=readme)
From your WordPress dashboard
1. **Visit** Plugins > Add New 2. **Search** for "Advanced Product Fields for WooCommerce" 3. **Activate** the plugin from your Plugins page 4. **Click** on the new menu item WooCommerce > Product Fields and create your first Custom Field Group (product addons).
What are the system or server requirements?
You’ll need WooCommerce 3.4.0 or higher, WordPress 4.7 or higher, and PHP 5.6 or higher to make this plugin work.
Contributors & Developers
“Advanced Product Fields (Product Addons) for WooCommerce” is open source software. The following people have contributed to this plugin.Contributors
“Advanced Product Fields (Product Addons) for WooCommerce” has been translated into 5 locales. Thank you to the translators for their contributions.
Translate “Advanced Product Fields (Product Addons) for WooCommerce” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
* Fix: fixed an error when adding conditionals to fields in the backend (and a content field was present). * Fix: a few texts had the wrong translation textdomain.
* New: new option for "number" field to allow decimal numbers as well.
* Fix: fixed a translation issue in German. * Fix: Add WPML config file for add-to-cart text in the settings.
* Improvement: minor performance improvements. * Improvement: price labels now take into account WooCommerce price arguments and "hide zeros" filter. * Other: compatibility test with WordPress 6.2 (beta 1). * Other: compatibility test with WooCommerce 7.4 (beta 1). * Other: minimum WooCommerce version will be bumped up to 3.8 in the next release.
* Fix: include content.php.
* Fix: fixed a PHP warning when outputting the paragraph field in some cases. * Other: tested WooCommerce 7.3 beta release.
* Improvement: modernized admin CSS, resulting in a smaller footprint. * Other: verify Woo 7.3 (beta 1) compatibility.
* Other: verify Woo 7.1 compatibility. * Other: update internal links to their proper addresses.
* Other: verify WP 6.1 compatibility. * Other: verify Woo 7.0 compatibility.
* Fix: fixed an error when duplicating field groups with fields containing conditionals.
* New: new field type "paragraph", allowing you to add static content (text) in between other fields.
* Improvement: added styling to support modern page builders & themes like Elementor, Astra, and the Avada theme.
* New: included "order again" functionality. * Other: tested & verified new Woo version.
* Other: tested and verified new major WP release + WooCommerce version. * Other: bumped minimum required WooCommerce version from 3.4 to 3.6.
* Fix: fixed a bug with a field limit alert dialog showing incorrectly.
* Improvement: adding to cart via the URL (with '?add-to-cart=') now validates required fields.
* Improvement: the "True/False" fields's labels 'true' or 'false' can now be translated. * Other: verify compatibility with latest WooCommerce & WordPress version.
* Other: verify compatibility with Woo 6.2.
* Fix: fixed a PHP warning. * Other: verify compatibility with latest Woo version.
* New: added Danish translations.
* Other: verify compatibility with new WP & Woo version.
* Fix: fixed an issue with some "add to cart" validations. * Fix: fixed an issue with "required" translation string. * Other: verify compatibility with current Woo version.
* Fix: fixed a bug where some configurations would result in a general "add to cart" error. * Other: verify compatibility with current Woo version.
* Update: changed all array() functions to shorthand syntax. * Update: enhanced/secured "add to cart" validation. * Other: verify compatibility with upcoming WP & Woo versions.
* Update: changed links to new version of the documentation. * Update: verify WooCommerce & WP version tags.
* Update: verify WooCommerce & WP version tags. * Update: minimum WooCommerce version is now set to 3.4.0. We ensure compatibility with previous minimum version (3.2.0) for the time being.
* Update: added translations for Italian, Norwegian, Swedish & Portuguese. * Fix: fixed an issue with VAT-inclusive prices in combination with 0% VAT classes and calculating incorrect base price in the cart. * Fix: fixed an edge case bug where reordering fields in the backend didn't work.
* Fix: fixed an issue with "wp_slash" for versions older than WP 5.5. * Fix: removed some deprecated functions in jQuery. * Other: tested & updated WP & Woo version tags.
* Update: allow more HTML tags in field labels & descriptions (while still being secure). * Fix: fixed an issue where saved product fields were serialized twice.
* Fix: fixed PHP some notices when saving fields in the backend.
* Fix: minor styling issues in WP 5.5+. * Fix: fixed "advanced" tab of Yoast SEO plugin not showing.
* Added: support for Polylang. * Fix: fixeded cart showing options with "(+$ 0.00)" when no pricing method was selected for this option.
* Fix: changed translations text-domain to match the plugin slug so transating via translate.wordpress.org is possible.
* Fix: fixed a PHP warning with stripslashes().
* Update: enhanced how field data is stored in the database: as array instead of objects. This ads more compatibility with migration/export plugins. * Update: disable stripe "pay now" buttons on the product page as they can't pick up custom pricing. * Fix: fixed an issue when a user entered text with a quote symbol, a slash would appear before it in cart/checkout.
* Added: the plugin now fully supports your WooCommerce tax settings. * Update: added CSS to make the admin backend play nicer with the new WP styling. * Fix: fixed a bug where empty fields were still shown in cart. * Fix: fixed a bug where some fields would be wrapped in a new row unintentionally. * Fix: fixed a bug with duplicating field groups under "WooCommerce > Product Fields". field ID's weren't unique when duplicating.
* Update: changed frontend JS a bit to support more themes. * Update: verify Woo 4.0 & 4.0.1 compatibility. * Fix: fixed an issue with cart validation of radio buttons, select lists or checkboxes.
* Update: UX improvement: admin won't save if choice field labels are not set and display the error. * Update: UX improvement: show error message when duplicating field groups doesn't work. * Update: allow 5 field groups in free version instead of just 4. * Update: tested compatibility with latest Woo version and updated tags.
* Fix: fixed a bug when creating a 4th field group. Adding fields to it wasn't possible. * Fix: removed a PHP warning.
* Fix: fixed typo in "checkbox" template.
* Update: added WPML support.
* Update: support for "ajax add to cart" themes and "required" fields. * Fix: "select options" was sometimes incorrectly showing.
* Update: the dropdown label "choose an option" now only appears when necessary. * Update: added frontend translations for Dutch, French, German, and Spannish. * Fix: fixed an issue with column widths.
* Update: better dependency checking on the frontend. * Fix: fixed an issue with select lists and pricing. * Fix: fixed an issue with true-false field price labeling.
* Fix: fixed an issue with duplicating some fields in the backend. * Fix: fixed an issue with hidden fields validating on the frontend. * Fix: fixed an issue with decimal pricing on the frontend.
* Update: When searching for products in the backend, you can now also find products in draft. * Update: added extra info dialogs to the pricing options, so you better understand all options available. * Update: support variations via ajax. * Fix: fixed pricing calculation when a variation is selected by a user. * Fix: fixed an issue with hidden fields wrongly validating in cart. * Fix: fixed an issue with product price not updating when the user select a variation.
* Fix: fixed an issue with decimal price formatting on the single product page.
* Update: added .pot file for translators. * Update: added filter for devs to change the "product totals" HTML. * Update: allow some HTML in field descriptions & labels.
* Fix: fixed a bug with item pricing when changing item quantity on the cart page.
* HTML Changes so it can more easily be styled with CSS