Products that are part of a Composite Product must have a price assigned, even when Priced Individually is unticked. WooCommerce does not allow products with a blank price to be purchased.
If the Composite product does not contain any Components that are Priced Individually, make sure that a price has been entered in the Regular Price field, located in the Product Data > General tab.
If this is in order, the cause might be due to a conflict with a third-party theme or plugin. To diagnose script-related issues with third party themes or plugins, follow this guide to see if there are any script-related errors in your browser. The easiest way to find the cause of such issues is to: (a) revert to a default WordPress theme and (b) start disabling plugins one by one, until you find the one that’s responsible.
Note that products included in composites must have a non-blank price, as well.
Composite product contents are not counted. A Composite product is counted as one item, no matter how many products it contains.
If your theme is counting cart items in a different way, ensure that it uses the
WC()->cart->get_cart_contents_count() method to count cart items. If unsure how to verify this, share this information with your theme author(s).
Many WooCommerce themes place single-product summaries next to the main product image, which is ideal for displaying a short product description, a price and some metadata. Add-to-cart form content is normally displayed inside the single-product summary as well, which works very well for displaying simple or variable products.
However, this layout is not ideal for complex product types, such as composites, which require more space for their add-to-cart form content.
If the form content of your Composite products appears narrow or squeezed, choose the Form Location > Before Tabs option and see if it works better for you. Alternatively, try this plugin to move the add-to-cart form under the product image and summary.
In many cases it is desirable to make a product available only within a Composite. This is possible by changing the Catalog Visibility of this product to hide it from the catalog/search of your site. Hidden products will still show up in any Composites that contain them.
This is a very common issue on WP sites with lots of plugins (lots of data to post, process and save).
In most cases the default value of the
max_input_vars parameter is 1000 — this means that only the first 1000 form fields are allowed to be processed and saved. Due to the amount of configurable fields added by Composite Products on the edit-product page, a higher value is required to allow processing and saving lots of bundled items without issues.
The only way to fix this reliably is to ask your host to change this in their
php.ini configuration file. Once this is done, it’s recommended to double check that the value has been changed correctly by navigating to WooCommerce > Status.
Setting it to at least 5000 usually resolves the problem.
Composite Products allows you to add Variable-type products as Component Options. However Variable products support comes with a number of limitations:
- It is not possible to offer Variations as Component Options.
- The extension is not optimized for Variable products with a large number of variations. When choosing a Variable product in a Component, it may take a long time to load and display product details, as the extension requires all available variation data to be loaded when the variable product is chosen.
- When using Scenarios to conditionally exclude specific variations, Variable product prices in Dropown, Radio Buttons and Thumbnails option templates are not dynamically updated based on the active/compatible variations.
When creating large, complex Composite products with many product/variation options, you may experience slow page-load speeds if you are on a shared hosting environment with limited resources.
Running an e-commerce website requires a fast hosting environment with sufficient resources dedicated to complex database queries. Choosing a cheap or low-quality host hurts the uptime and performance of your website, resulting in lost sales and costly upgrades.
Poorly-coded themes can also have a serious impact on page-load speeds, especially when using complex extensions such as Composite Products. If you are experiencing slow page load speeds on the front-end: (a) switch to the default WordPress theme and (b) disable all third-party plugins one by one, remembering to re-test after each change.
The following tips are also useful for diagnosing performance-related issues:
- The shop prices of Composite products are based on calculating the cheapest possible configuration. For complex Composite products with individually-priced Components that contain many product/variation options, this can be a resource-intensive process. For the best possible performance in large-scale applications, it is highly recommended to tick the Hide Price option, which bypasses all internal logic associated with finding the cheapest possible configuration. It is located in the Product Data > General tab.
- Use the Thumbnails Options Style with Components that contain more than ~20-30 products. The Dropdown and Radio Buttons styles require all product data to be loaded at once and have a negative impact on performance as the number of Component Options increases.
- For the best possible performance, ensure that you are running the latest versions of WooCommerce and Composite Products.
When creating large Composite products with many Component Options, the extension will try to decrease page load speeds by loading some data “on demand”. However, if you are using a full page cache, you may prefer to pre-load as much data as possible in order to take full advantage of it.
To disable lazy-loading for all Components and Composites, use the following snippet/plugin:
To create a custom Composite Add to Cart URL, please follow the steps below:
- Edit the Composite.
- Navigate to Product Data > Components.
- Check the ‘Edit in cart‘ option and Update the product.
- Click to view the Composite, configure its components and add it to the cart.
- In the cart, click the edit option.
- Copy the URL after removing the
- Add an
add-to-cart=$IDparameter, replacing ‘$ID’ with the ID of the Composite Product you are working on.
Auto-optimizer plugins prevent Composite Products scripts from running, which causes issues with the extension’s basic functionality. More specifically, when auto-optimizer plugins are used, the composite product form does not load.
Customizations are not covered under our Support Policy. However, we encourage you to have a look at the available mini-extensions and snippets. If the customization you are looking for is not included there, please seek assistance from a WordPress/WooCommerce developer. We highly recommend a Certified WooExpert.
The official WooCommerce extensions supported by Composite Products are listed in the Compatibility and Integrations section. Third party extensions/plugins are not supported.
For compatibility with WooCommerce, WPML relies on the WooCommerce Multilingual plugin.
Composite Products does not support WPML directly. If you are experiencing any issues, please reach out to WPML support.
You can use a plugin such as Loco Translate to edit text strings. This is the best way to customize WooCommerce text strings, as the edits will not be overwritten when plugins are updated.
After activating Loco Translate:
- Go to Loco Translate > Plugins and click Composite Products.
- Click on New Language.
- Choose the desired or your site’s default language in the dropdown menu.
- Select Custom in the Choose a location option.
- Press Start Translating.
- Search for the string you want to edit.
- Select it and add your modification.
- Press Save.
For more details visit Generating a New Translation.
If a Composite product contains configurable Components, a Configure button is appended to the title of the order item. Clicking the Configure button brings up a modal that allows Store Managers to:
- choose configuration options; and
- add the configured Components to the order.
If a Composite product does not contain any configurable Components, all static Components are added to the order along with the parent/main order item — in this case, no action is required.