This article is also available in:
On this article:
A. What is Personalized product?
B. Add custom options for each product
C. Add many custom form fields by additional scripts
D. Export personalized information into CSV file

A. What is Personalized product?
Product personalization is any product altered according to the customer's need or desire. It can be custom made products or some design/prints on the already available product. For example, print buyer name or their photo on a T-shirt. On ShopBase, you can either add custom options on each Product, or adding scripts to add form fields on your storefront. The latter way will save time but can't be set for specific products.

B. Add custom options for each product
From ShopBase admin, go to Products > All products. Click on the name of the product you want to add custom options to.
From Custom Options section, click Add custom option

You can add as many custom options as you like. The custom fields are as follows:

Learn more about Custom option settings.
Your settings will show up on your product page as below:

Click the eye icon to hide/unhide each custom option on your store. Drag and drop each custom option to change their order on your product page.

Save your change.

C. Add many custom form fields by additional scripts

You can add custom fields for many products as once with this option. Add the script below to your online store by following this instruction on how to use Power Up Script, then products with tag personalize or custom will be added a personalize text field.

(function() {
var fields = [{
name: 'Custom Text 1',
label: 'Label for Custom Text 1',
description: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
placeholder: 'Custom Text 1',
optional: false,
validationMessage: 'Please finish this field'
name: 'Custom Text 2',
label: 'Label for Custom Text 2',
description: '',
placeholder: 'Custom Text 2',
optional: true,
validationMessage: 'Please finish this field'
name: 'Custom Text 3',
label: 'Label for Custom Text 3',
description: 'Lorem ipsum dolor sit amet',
placeholder: 'Custom Text 3',
optional: false,
validationMessage: 'Please finish this field'
var mustMatchEnableTags = false // true to turn on matching, false to turn off
var tagMatchType = 'any' // must be 'all' or 'any'
var enableTags = ['personalize', 'custom']
var customPropertyForm={init:function(){{if("product"===e.type)var t=0,n=setInterval(function(){customPropertyForm.injected()||(customPropertyForm.injectForm(),clearInterval(n)),4===t&&clearInterval(n),t++},500)})},injected:function(){return!!document.getElementById("custom-properties-form")},injectForm:function(){if(!mustMatchEnableTags||customPropertyForm.isProductMatchEnableTags()){var e=document.getElementById("changeQuantityForm"),t=document.getElementById("addToCartForm");if((!e||e&&e.parentNode==t)&&(e=t),e){var n=document.createElement("div");n.className="line-item-property__container","0.5em","custom-properties-form",n.innerHTML="",fields.forEach(function(e){const t="margin-bottom: 1em;",r="font-weight: bold; margin: 0; font-size: 1em; line-height: 1.5;",o="font-size: 0.85em; margin: 0; line-height: 1.5; margin-bottom: 0.25em;",i="display: block; width: 100%;",a="color: #FF0000; font-size: 0.875rem; margin: 0; margin-top: 0.375rem; display: none;",s=e.optional?"":"required";n.innerHTML+="".concat('<div class="line-item-property__field" style="'+t+'">','<label class="line-item-property__label" for="''" style="'+r+'">'+e.label+"</label>",e.description?'<p class="line-item-property__desc" style="'+o+'">'+e.description+"</p>":"",'<input class="line-item-property__input" '+s+' id="''" type="text" name="properties['']" placeholder="'+e.placeholder+'" style="'+i+'">','<p class="line-item-property__feedback" style="'+a+'">'+e.validationMessage+"</p>","</div>")}),e.parentNode.insertBefore(n,e)}}},isProductMatchEnableTags:function(){var e=window.sbsdk.product.current(),t=e.tags?e.tags.split(","):[];return!("any"!==tagMatchType||!enableTags.some(e=>t.indexOf(e)>-1))||!("all"!==tagMatchType||!enableTags.every(e=>t.indexOf(e)>-1))}};document.addEventListener("DOMContentLoaded",function(){customPropertyForm.init()});

How to change settings for custom form fields

name: This is stored on ShopBase database and on your export order CVS file. It should be short and easy to remember ( Example: name)
label: This will be shown on the product page. It should be short instruction and easy for buyers to understand. For example, Your name (should not exceed 30 characteristics)
optional: by default, all custom fields will be required for customers to add products to cart. If you want your customers to skip any custom fields, you can set optional as true for the corresponding field

Add custom form fields to specific pages only.

If you want to only add custom form fields to specific pages only, you can assign a tag to your product and make the following changes:
`mustMatchEnableTags`: You can set a condition so the custom form fields are shown based on product tags. If set true, ShopBase will check and add custom form fields to the product page that match the conditions. If set false, ShopBase will all custom form fields to all products.
tagMatchType : If you add the custom form field to products that match all listed tags, set all. If you want add the custom form field to products that just have one of the tags, set any.
enableTags: Listed your desired tags, tags need to be in apostrophes and separated by a comma.

D. Export personalized information into CSV file

When export order, select Customize export fields under Export Template
Select the fields you want to export (you can also save this template for later uses)
To export information about personalized products on orders, you need to select Lineitem properties

After export, data will be shown on Line-item properties column on CSV file, including name and label.
Was this article helpful?
Thank you!