{"id":478,"date":"2023-05-10T12:16:10","date_gmt":"2023-05-10T11:16:10","guid":{"rendered":"https:\/\/www.webgeneration.co.uk\/?page_id=478"},"modified":"2026-05-05T12:41:33","modified_gmt":"2026-05-05T11:41:33","slug":"product-custom-options","status":"publish","type":"page","link":"https:\/\/www.prestafusion.com\/blog\/documentation\/product-custom-options","title":{"rendered":"Product Custom Options"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"introduction\">Introduction<\/h2>\n\n\n\n<p>Product Custom Options for Prestashop allows you to add priced custom options \/ attributes to your product pages allowing customers to select from a range of fields you can set up. This module makes it easy to manage such attributes to allow your customers to customise the product they are purchasing and eliminates the need to handle large lists of attribute combinations.<\/p>\n\n\n\n<p>The module allows you to set up the following types of custom options :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Dropdown select<\/li>\n\n\n\n<li>Radio Inputs<\/li>\n\n\n\n<li>Checkboxes with multiselect <\/li>\n\n\n\n<li>Image options<\/li>\n\n\n\n<li>File uploads<\/li>\n\n\n\n<li>Color options<\/li>\n\n\n\n<li>Date options<\/li>\n\n\n\n<li>Text entry options<\/li>\n<\/ul>\n\n\n\n<p>You may add a multiple mix of options to each product.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation\">Installation<\/h2>\n\n\n\n<p>The installation procedure is very much similar to most other Prestashop modules. No core changes required therefore installation is straight forward, be sure to follow the instructions below to ensure a successful installation.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Upload the module folder to your stores <code>{root}\/modules<\/code> folder<\/li>\n\n\n\n<li>Once uploaded, login to your Prestashop Back Office and head over to the <strong>Modules<\/strong> section<\/li>\n\n\n\n<li>Search for the module and click <strong>Install<\/strong><\/li>\n\n\n\n<li>After a successful installation, the module configuration screen is presented to you. More details on this in the next section.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"configuration\">Configuration<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"\/blog\/wp-content\/uploads\/documentation-images\/productcustomoptions\/configuration-installation.webp\" alt=\"Configuring the module\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-options-tab\">Options Tab<\/h3>\n\n\n\n<p>Open the module configuration and you will be presented with the options tab. Here you can create new fields which will be then made available to your products in the back office where you can manage them further. To get started, click the <strong>new option<\/strong> button located in the top right hand corner of the screen: <img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"53\" class=\"wp-image-757\" style=\"width: 150px;\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-button-new-option.webp\" alt=\"New Option button\"><\/p>\n\n\n\n<p>You will now be presented with the following form options:<\/p>\n\n\n\n<p><strong>Internal Name<\/strong><\/p>\n\n\n\n<p>Internal name for the field, without any punctuations or accented characters.<\/p>\n\n\n\n<p><strong>Option Title<\/strong><\/p>\n\n\n\n<p>The name of the fields as it will be displayed in the store front on the product pages, checkout pages etc. This is a multi-language field, therefore if your store offers more than one language then you can provide a Display Name for each language.<\/p>\n\n\n\n<p><strong>Option Hint<\/strong><\/p>\n\n\n\n<p>This will display a information icon next to the option title and the hint will appear when the customer clicks or moves the cursor over the icon.<\/p>\n\n\n\n<p><strong>Option Type<\/strong><\/p>\n\n\n\n<p>Choose the type of option that will be presented to the customer on the product page. Your options are:<\/p>\n\n\n\n<p><strong>Drop down<\/strong> &#8211; A simple drop down list of options from which the customer can select a single option<br><strong>Checkboxes Multi-select<\/strong> &#8211; Display options as checkboxes from which the customer may select a single or multiple options<br><strong>Radio Inputs<\/strong> &#8211; This will display all options as radio inputs from which the customer may select a single option.<br><strong>Images<\/strong> &#8211; Allows you to define an image for your options to provide the customer with a visual representation of each option.<br><strong>File:<\/strong> Allows you to add file upload fields to your products<br><strong>Colors<\/strong> &#8211; Allows you to define colors for your options which will be presented to the customer as swatches for selection on the product page.<br><strong>Date &#8211; <\/strong>Allows the customer to enter or select a date from a date field (with a pop out calendar)<br><strong>Textfield<\/strong> &#8211; Allows the customer to enter some text into the field which will be added together with the product in the cart<\/p>\n\n\n\n<p><strong>Required<\/strong><\/p>\n\n\n\n<p>Set this to yes to make the option mandatory on the product page for the customer to select from. The customer will now be able to add the product to the cart if a option value is not selected.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-option-values-tab\">Option Values<\/h3>\n\n\n\n<p>After adding a new option, you can start adding option values for the option. For example, if you created an option called <strong>Size<\/strong>, you would now start adding option values such as <strong>\u201cSmall, Medium\u201d<\/strong> etc.<\/p>\n\n\n\n<p>To start adding option values, simply click the <strong>add a option value<\/strong> button from he section show below:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"338\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-1024x338.webp\" alt=\"Viewing and adding Option Values \" class=\"wp-image-758\" srcset=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-1024x338.webp 1024w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-300x99.webp 300w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-768x254.webp 768w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-1536x507.webp 1536w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values-1200x396.webp 1200w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/configuration-option-values.webp 1687w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Depending on the type of option you selected in the step earlier, you will be presented with a different set of properties to populate such as the Label or color properties. If you have a multi language store then don\u2019t forget to populate the label property in all languages.<\/p>\n\n\n\n<p>Now that you have created your first option and it\u2019s associated option values you can add additional options which you will use across your products. In the next section we\u2019ll take a look at how we can start assigning these options to individual products in your store.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Steps<\/h3>\n\n\n\n<p>Steps allow you to organise options into steps. This will provide a walk through for the customer on the product page, allowing them to navigate and through the steps to help them customize their purchase.<\/p>\n\n\n\n<p>Steps make complex products with many options easier to navigate by presenting options gradually instead of all at once.<\/p>\n\n\n\n<p>To add steps, open the steps tab and then press the New step button from the top right. You can assign options to steps when assing options to products which we shall explore next.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-mass-assign-tab\">Mass Assign Tab<\/h3>\n\n\n\n<p>The mass assign tab allows you to copy the module configuration from one product in your store (we will configure a product later in this user guide) to multiple categories and \/ or products across your store.<\/p>\n\n\n\n<p>First start by typing in the name of the product you wish to copy the configuration from into the product search field and then select the product which appears in the search results dropdown.<\/p>\n\n\n\n<p>Next, select the category or categories you wish to the copy the configuration across to. If you select a single category you can also select individual products in that category you wish to copy to. Alternatively you can select multiple categories and the settings will be applied to all products in those categories.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"configuration-product\">Assigning Product Options to Products<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-product-options\">Adding options<\/h3>\n\n\n\n<p>To start assigning options and option values to products navigate to <code>Catalog &gt; Products<\/code> and <code>Edit<\/code> the product in question. Open up the <code>Modules tab<\/code> and <code>configure<\/code> the Product Custom Options module as shown below:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"450\" height=\"482\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-configure.webp\" alt=\"Assigning product custom options to individual products\" class=\"wp-image-759\" srcset=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-configure.webp 450w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-configure-280x300.webp 280w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/figure>\n\n\n\n<p>You should now see the following:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/documentation-images\/productcustomoptions\/configuration-steps.webp\" alt=\"Group options into steps\" class=\"wp-image-760\"\/><\/figure>\n\n\n\n<p>Ensure that <strong>Enabled for Product<\/strong> is set to yes.<\/p>\n\n\n\n<p>Next select the option you wish to add to the product from the <strong>Add new a option<\/strong> dropdown. This will create a new group where you can add option values. Click the <code>add a option value<\/code> button which will reveal option values available for the new option you are adding. You can populate properties such as the price and weight; other properties may also exist for other option types such as images where you can also upload an image to associate with the option value.<\/p>\n\n\n\n<p>The option value entry should look similar to what is shown below:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"900\" height=\"45\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-option-value-add.webp\" alt=\"Adding a option value to an option\" class=\"wp-image-761\" srcset=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-option-value-add.webp 900w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-option-value-add-300x15.webp 300w, https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-option-value-add-768x38.webp 768w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/figure>\n\n\n\n<p>The Price type property allows you to choose if the impact should be a fixed impact (this will add the option price to the base price of the product) or a percentage based impact (based on the base price)<\/p>\n\n\n\n<p>Click add to commit the change and add additional option values if you need to. You can delete or rearrange the position of both option values and options by dragging the position handle <img loading=\"lazy\" decoding=\"async\" width=\"22\" height=\"30\" class=\"wp-image-762\" style=\"width: 22px;\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2024\/03\/product-setup-drag-option.webp\" alt=\"Drag handle for re-ordering product options and option values\"><\/p>\n\n\n\n<p>Continue to add additional options and option values as described until you satisfied, after which you should press the <code>Save changes<\/code> button to permanently save the options you have assigned.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-product-steps\">Steps<\/h3>\n\n\n\n<p>If you wish to organise options into steps, then add a step from thew left hand panel. This will then appear on the options stage. From here you<br>can add options to different steps by simply dragging them onto the appropriate step.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"configuration-product-conditions\">Conditional Options and steps<\/h3>\n\n\n\n<p>The conditional options feature allows you to hide an entire step, entire options or specific option values when certain option values are selected by the customer.  Some examples of how conditions can be used are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When customer selects a small size, hide the color blue under the color option.<\/li>\n\n\n\n<li>When customer selects a small size, hide all color options.<\/li>\n\n\n\n<li>When customer selects a small size or a medium size, hide Step 3.<\/li>\n\n\n\n<li>etc<\/li>\n<\/ul>\n\n\n\n<p>Each step, or options has the following icon: <img loading=\"lazy\" decoding=\"async\" width=\"25\" height=\"27\" class=\"wp-image-1307\" style=\"width: 25px;\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/2026\/05\/product-setup-condition-option.webp\" alt=\"Conditional steps and options\"> Cliking it will display the following popup:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.prestafusion.com\/blog\/wp-content\/uploads\/documentation-images\/productcustomoptions\/product-setup-popup-conditions.webp\" alt=\"Applying conditions for displaying options and steps conditionally\"\/><\/figure>\n\n\n\n<p><strong>Left hand side<\/strong><\/p>\n\n\n\n<p>The left hand side allows you to select whether the entire option you are configuring will be hidden or specific option values within the option; when the conditions are satisfied.<\/p>\n\n\n\n<p><strong>Right Hand Side<\/strong><\/p>\n\n\n\n<p>The right hand side allows you to choose when the option or option values selected on the left hand side will be hidden.  If the customer selects any of the option values you select on the right hand side, then the options \/ option values on the left hand side will be hidden for the option you are configuring.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"front\">Front End<\/h2>\n\n\n\n<p>After you have finished assigning options and option values to your products, they should be visible on the <strong>product page<\/strong> for the customer to select before they purchase an item:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"\/blog\/wp-content\/uploads\/documentation-images\/productcustomoptions\/front-end-product.jpg\" alt=\"Product Custom Options on the product page\"\/><\/figure>\n\n\n\n<p>The options will also be displayed in the customer shopping cart and you&#8217;ll be able to see the options selected from the back office when the customer places their order.<\/p>\n\n\n\n<p><a href=\"https:\/\/addons.prestashop.com\/en\/combinaisons-customization\/85906-product-custom-options-attributes.html\" class=\"btn-cta-primary btn-full-width\">Get Product Custom Options on Prestashop Addons site<\/a><\/p>\n<p><a href=\"https:\/\/www.prestafusion.com\/prestashop-modules\/25-product-custom-options-attributes.html\" class=\"btn-cta-primary btn-full-width\">Get Product Custom Options on Prestafusion<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Product Custom Options for Prestashop allows you to add priced custom options \/ attributes to your product pages allowing customers to select from a range of fields you can set up. This module makes it easy to manage such attributes to allow your customers to customise the product they are purchasing and eliminates the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":549,"parent":59,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"templates\/template-documentation.php","meta":{"footnotes":""},"class_list":["post-478","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/pages\/478","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/comments?post=478"}],"version-history":[{"count":21,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/pages\/478\/revisions"}],"predecessor-version":[{"id":1312,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/pages\/478\/revisions\/1312"}],"up":[{"embeddable":true,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/pages\/59"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/media\/549"}],"wp:attachment":[{"href":"https:\/\/www.prestafusion.com\/blog\/wp-json\/wp\/v2\/media?parent=478"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}