Attribute Sets

Attribute Sets are really helpful for:

  • Extending Products and Sku data
  • Asking for extra order information
  • Data needed for integrations

You can view a really informational video about Attribute sets here in the feature videos section of Slatwall Commerce.

To access the Attribute Set listing:

  • Click Config on the Slatwall toolbar.
  • Select Attribute Sets.

From here, you can view and edit existing attribute sets, or create a new ones.

Creating a New Account Attribute Set

Begin by clicking the blue +Add Attribute Set button in the upper right section of the Attibute listing page and selecting Add Account Attribute Set.

Choose a descriptive Attribute Set Name  which clearly indicates the fields this set will define, and an Attribute Set Code which relates to the name (for example, "Extended Account Info" for Name and "exAI" for Code). By default, all Account Attribute Sets are global. 

There are many attribute set objects to choose from:

 

Clicking Save will bring you to a page for the attribute set, which lists all attributes within the set and a description (if desired).

If this is a new attribute set, it will have no attributes, so add one by clicking + Add Attribute. (expand the attributes accordion)

 

 

Input an Attribute Name and Attribute Code that will help identify the attribute. Since we are asking for extended information, we might add attributes like "Mother's Maiden Name" (code: momName), "Social Security No." (code: ssn), and "Date of Birth" (code: dob). Any text entered into Attribute Hint will display on the frontend if coded to do so. For multiple-choice attributes, set Default Value to 1.

Input Type (see image above, right) determines the means by which users will interact with this attribute, and the input type you choose is heavily dependent on the nature of the attribute. For example, since maiden name and SSN require only a single line of text, you would choose Text for them (Text Area provides a multi-line input area). For Date of Birth, however, you'd want a Date input. Other examples: "Do you smoke?" (Yes / No); Race/Ethnicity (Radio Group or Check Box). 

Saving your attribute will bring you to the attribute page, which can be used for adding a description and adding options to this attribute.  Text fields and the like will have no options, but in order for a multiple-choice attribute to be useful you must have at least one option, so click + Add Attribute Option

An attribute option has two parts: a Value (use consecutive integers) and a Label. For attributes with multiple options, remember that the Default value will dictate which option is the default. If you set Default Value to 1 when creating the attribute, remember to change it later to reflect your actual desired default's value.

Once an attribute set has been fully created, you will still need to incorporate its display into your site's account info template for any frontend functionality. Until these new fields have been programmed to display on an account page, users will be unable to enter them when creating or editing their account. This information can be manually entered from the backend via a tab which will appear for the new Account Attribute Set, but unless you happen to have your customers' social security numbers on hand, you're going to need the frontend implementation.


Creating a New Product Attribute Set

Begin by clicking the orange + Add button and selecting Add Product Attribute Set.

Choose a descriptive Attribute Set Name which clearly indicates the product this set will define, and an Attribute Set Code which relates to the name (for example, "T-Shirt Details" for Name and "TeeDetails" for the the Attribute Set Code). If this will be an attribute for all products, set Global Attribute Set to yes; otherwise, set it to no; once the set has been created, you will have to select product types to which this set applies from the Product Types tab. Clicking Save will bring you to a page for the attribute set, which lists all attributes within the set, a description (if desired), and a tab for product type assignment if this is not a global attribute set. If this is a new attribute set, it will have no attributes, so add one by clicking + Add Attribute.

Your product attribute needs are likely to vary widely, from extended options for products (for example, the ability to mark whether any product is a gift) to additional text (for example, a description of shirt materials or a history of the organization that makes the shirt). Any product page field that does not come standard in Slatwall will likely require making extended product attributes to implement. 

Input an Attribute Name and Attribute Code that will help identify the attribute. For our T-Shirt example, you might add Rich Text Editors (see input type, below) called "Sizing Explanation" (code: sizingExplain) and "About Company" (aboutComp). Any text entered into Attribute Hint will display on the frontend if coded to do so. For attributes that will or could have multiple options, enter a Default Value of 1. For attributes that are inherently solitary (such as those text editors), leave this blank.

Input Type (see image above, right) determines the means by which users will interact with this attribute, and the input type you choose is heavily dependent on the nature of the attribute. Text will provide a basic box into which a Product editor can input a line of information to display on the page; Text Area is for multiple lines; a Rich Text Editor will generate a WYSIWYG editor. For customizable products, Radio Group, Select Boxes, and Multiselect may be more useful. If you want to give the customer the ability to mark some products as gifts, you would create a Yes/No attribute with a name like "Is this a gift?" (code: giftable).

Saving your attribute will bring you to the attribute page, which can be used for adding a description and adding options to this attribute if it has an option-utilizing input type. In order for such attributes to be useful you must have at least one option, so click + Add Attribute Option. An attribute option has two parts: a Value (use consecutive integers) and a Label. For attributes with multiple options, remember that the Default value will dictate which option is the default. If you set Default Value to 1 when creating the attribute, remember to change it later to reflect your actual desired default's value. 

Remember to assign this attribute set to product types if it is not global. Any product that falls under the type(s) you assign this attribute set to will now have an additional tab with the attribute set name on which all attributes in the set will be displayed and editable. 


Creating a New Product Customization (Order Item) Attribute Set

Begin by clicking the orange + Add button and selecting Add Product Customization Attribute Set.

Choose a descriptive Attribute Set Name which clearly indicates what this set will define, and an Attribute Set Code which relates to the name (for example, "T-Shirt Logo Placement" for Name and "AS-TSLP" for the the Attribute Set Code). If this will be an attribute for all products, set Global Attribute Set to yes; otherwise, set it to no; once the set has been created, you will have to select product types to which this set applies from the Product Types tab. If all product types to which this set is applied must pass a value from this set, select Required Flag: yes. If you want the customer's customization choices (from this attribute set) to be saved to the account for future use, select yes for Enable Account Saving. If choosing this customization option affects the cost of the product, add the amount of Additional Charge here. Clicking Save will bring you to a page for the attribute set, which lists all attributes within the set, a description (if desired), and a tab for product type assignment if this is not a global attribute set. If this is a new attribute set, it will have no attributes, so add one by clicking + Add Attribute.

Input an Attribute Name and Attribute Code that will help identify the attribute. If this were in a set of T-Shirt Logo Placements, you might want this attribute to be logo placement options for Nike shirts, and you'd name it something like "Nike Placement," with code "AT-Nike" to identify it as a Nike attribute. Any text entered into Attribute Hint will display on the frontend if coded to do so. Enter a Default Value of 1. 

Input Type (see image above, right) determines the means by which users will interact with this attribute, and the input type you choose is heavily dependent on the nature of the attribute. In the logo placement case, assuming you only wanted one logo on a shirt, you would use a Radio Group (for an example, look at the Yes/No indicators for Active and Required in the image above), which allows only one selection. If you could opt to have the logo in three places at once, you might instead opt for Multiselect. One popular input type is Text Area, which you might use for a product that allows the customer to enter custom text (such as a name or greeting). 

Saving your attribute will bring you to the attribute page, which can be used for adding a description and adding options to this attribute. In order for your attribute to be useful you must have at least one option, so click + Add Attribute Option. An attribute option has two parts: a Value (use consecutive integers) and a Label. Recall that the default value was set to 1, so the first option you create should also have a value of 1. If you'd prefer for your default option -- the option which will display as standard on the frontend -- to be different, simply create the option and then assign its value to the default on the attribute page. The label is what will display on the frontend to delineate different options, so try to make it as concise and clear as possible.

So, for our T-Shirt Logo Placement example, we might make four options: Left Chest (1), Right Chest (2), Front Center (3), and Back Center (4). 

Remember to assign this attribute set to product types if it is not global.


Once an attribute set has been fully created, you will still need to incorporate its display into your site's product detail template for any frontend functionality. For example, for the "Is this a gift?" Yes/No Product Attribute mentioned earlier, Slatwall will present the Yes/No option on the backend during Product creation; but this is an option you want your customers to be toggling, not your administrators. Any such situation, in which the customer must be able to interact with the attribute, requires programming of the attribute into the page template. Another example: a shirt or mug which can be customized with text or an image. In this case, WYSIWYG editors would appear in the backend and allow the product creator to input a default placeholder image and text, but for users to replace that content with their own the editor would need to be coded into the page template.