1. Preparing data for import
Product data can be added to the BrightDecide plugin via CSV import. Your CSV data needs to have certain properties for the plugin to properly recognize it. Save your file as a plain CSV. It is important that your file is not saved as CSV UTF-8, CSV (MS-DOS) or CSV (Macintosh).
Unique identifier
In your CSV you need to have an unique identifier for every product. This can either be the product name, link, description or image. Alternatively, you can add a column with unique created-at timestamps (Format: Y-M-D H:M:S). During import you will need to choose the column with the unique identifier. When it comes to updating your product list, always choose the same identifier.
CSV columns
There are two kinds of columns: The product columns and the property columns.
- Product columns define the products and contain its name, link, image, description and timestamp. These 5 columns need to have the prefix Product_ . So name them as follows: Product_name, Product_img, Product_link, Product_description, Product_created. Name and link are mandatory.
- The property columns (in the plugin also refered to as property categories) contain the properties and their values, that are used for filtering, sorting and comparing your products. A property category can be anything (for example price, brand, color, weight…). Property columns need to have the Property[] prefix. In the brackets you can also add flags to import certain setting for a property category. For example you can set a property category to appear as a filter in the product list or you can set which properties should be involved in the automatic product comparison. Alternatively you can adjust those settings later in the plugin’s admin panel (in that case simply leave the brackets empty).
Property[Setting 1, Setting2 …]PropertyName
Here are the setting flags, that you can use :
default_val: To make the comparison table clearer, some of the property categories might be hidden behind a “show more properties” button. With the default_val flag you can prevent a property category to be hidden. It’s recommended to use this flag for the most important property categories.
pre_filter: Prefilters narrow down the list of recommended products that the user will see. So this flag defines the property categories, that can be linked to a question / answer in the quiz.
filterable: Defines which property categories will appear as a filter for the product list.
is_numeric: Flags property categories with numeric values, which will be automatically compared. These columns can only contain values as defined in Formatting property values
is_not_comparable: Use this flag for property categories, that should not appear in the compare table. (e.g. for properties that you just use for prefiltering)
lower_is_better: Used to flag property catgories like Price, where a lower value is better. By default every numeric value will be compared on a the-higher-the-better basis.
has_bonus: Use this flag for property categories with non-numeric values, which you wanna make comparable. See Quantifying properties
ordering: Flags property categories, that you wanna use to order / sort the recommended product list. All values for these property categories need to be numeric (so is_numeric must be set) as defined in Formatting property values and must not contain any empty values. Replace empty values with zeros.
default_ordering: Set this property as the standard sorting option for the product list. If you set this flag, ordering and is_numeric need to be set aswell.
Example: For our espresso machine guide we assume, that the size of the water tank is an important property. So we don’t want it to be hidden behind the “show more properties” button in the comparison table. We want to compare the numeric values. Also we wanna enable users to filter the list of recommended products with this property. So the column in the CSV needs to look like this:
Property[default_val,is_numeric,filterable]Water Capacity
As a template, you can download our example CSV, that we used for the demo:
Formatting property values
Numeric values, that should be compared by the plugin, need to have one of the following formats. Please use spaces and commas/points only as shown in the table below:
Kind of property | Examples | Notes |
Plain Nr | 2019 20,19 | Only use commas for numbers with decimals |
Number with unit | 20 kg 23,9 “ | Space between value and unit Only use commas to seperate decimals |
Range | 150 – 200 m | Space between numbers and hyphens and unit. For the comparison both values will be summarized |
Combined values | 180/180 mm | Always use / as seperator. No space between the separator and numbers. Space between number and unit. Don’t put a unit before the separator. For the comparison both values will be summarized |
Price | 10000 € 11000,50 12000.50 $ | Any currency symbol possible. Use commas and points only as decimal seperator, not as thousands seperator |
Values that do not fit one of the above formats can only be compared by quantifying the properties.
Quantifying properties
The automatic comparison of the BrightDecide plugin can compare all kinds of values, even if they are non-numeric. For the plugin to be able to compare non-numeric values, you need to quantify them. That means, that you assign a bonus-value to properties, that are better than others. To do so, add the flag has_bonus to the column name and attach [Bonus[#]] to every property value in this column. Replace # with the bonus value you wanna assign to the property value.
Example: In our espresso machine example we have a property called Heating System There are different kinds of systems. The one with lowest performance is the value 1-circuit. A 2-circuit system is better, while a dual boiler system is the best. So in the CSV it looks like this:
Property[has_bonus]Heating System
1-circuit[Bonus[0]]
2-circuit[Bonus[2]]
Dual Boiler[Bonus[3]]