London Dev Meetup Rescheduled! Due to unavoidable reasons, the event has been moved to 21st May. Speakers remain the same—any changes will be communicated. Seats are limited—register here to secure your spot!

Arthur Vander Voort
Feb 24, 2023
  1692
(0 votes)

Optimizely PIM - Save Time With Dynamic Categories

For customers with large catalogs and complex taxonomies, managing product to category assignments can be a very time consuming task. Optimizely PIM allows you to manage category assignments within the application or by import but also has a dynamic category feature that can simplify the category assignment process and save teams a ton of time.

Standard Category Setup

Each product can be assigned to categories manually within the PIM. You can either edit the product record and assign categories from the categories tab, or edit the category and assign any number of products from the products tab. You can also assign products to categories in bulk via import. These approaches can be manageable in some cases, but depending on your taxonomy and data sources, this may become a serious chore.

StandardSetup.png

When to use standard category setup:

  • Smaller or less complex taxonomy
  • Data coming from a primary source with taxonomy data that matches your site's taxonomy
  • Infrequent product onboarding

Dynamic Categories

Opti PIM's dynamic categories allow you to simplify category management by using rules to determine product assignments. Once a category has a dynamic rule defined, you will no longer need to actively manage its products.

When to use dynamic categories:

  • Large or complex taxonomy
  • Data coming from disparate sources
  • Product category data not provided by data sources
  • Product category data from sources does not match your taxonomy
  • Frequent product onboarding

Dynamic category rules are setup in the UI using our rule builder. Rules are created by first selecting the property that will drive the rule, choosing an operator, and entering the value for the operator. For instance, if I want to create an "Energy Efficient" category, I might create a rule using a boolean property named "energy star certified" with an operator of "equals" and a value of "yes." Any product that has a value of yes for the energy star certified property will be included in the category.

EnergyEfficient1.png

Multiple rules can be set for a category, and categories can be set up so products that either match any of the rules or all of the rules will be included. For instance, you may have another boolean property of "green certified" and want to include any product that has data to match at least one of these rules. You would change matching logic to "any" and then add the second rule as shown below.

EnergyEfficient2.png

Use Case 1: Manage All Categories with Dynamic Categories

If you follow our recommendation to create product templates that match all of your lowest level categories, you can easily manage all categories using dynamic rules. This approach will take some effort on the initial setup but supports strong data governance while also completely eliminating the need for manual category management.

Setup:

  1. Create or generate templates for your leaf (lowest) level categories.
  2. Edit each category and enable dynamic rules on the products tab.
  3. Select product template as the property, equals as the operator, and the name of the category as the value.
  4. Repeat for each leaf level category.
TemplateBasedUseCase.gif

Use Case 2: Use Dynamic Categories for "Special" Categories

There may be special categories that are outside of your main taxonomy that can be more easily managed using a dynamic category rule. These are typically categories that include products that belong to multiple other categories. Examples could include energy efficient products, locally made products, sustainable products or clearance products. As long as your products have the appropriate data, you can easily create and manage these types of categories. As an example, if I am a distributor based in the United States, my customers may be more likely to purchase products in an "American Made" category.

Setup:

  1. Ensure there is a property to drive this rule logic (in this case "Made in the USA") and your products have data for the property.
  2. Create your new category and enable dynamic rules on the products tab.
  3. Select the new property with an operator of equals and a value of true.
AmericanMadeUseCase.png

Notes & Caveats:

  • Currently, dynamic rules can be created using properties that use text field, dropdown, radio button, multi select, and boolean control types. The operators and rule configurations available will vary based on the control type of the property selected. 
  • Products added to categories via dynamic rules will not require approval in the workflow. (e.g. If a product is already approved, and a dynamic rule is set that adds this product to a category, the product will not be resubmitted for approval)
  • To avoid constant evaluation of dynamic category rules whenever product data changes, products will not immediately show up in dynamic categories when imported or edited. Rules are evaluated when the category is saved and when data is published to commerce, so the products will be added to the appropriate category as part of the publishing process.
  • Since rules are evaluated as part of the publishing process, large numbers of dynamic category rules can increase the time it takes for the publish job to run.
Feb 24, 2023

Comments

Please login to comment.
Latest blogs
Display page/block thumbnail based on selected site in multi-site solution

In previous blog we described how to control the visibility of the blocks or properties based on the current site in multisite solution. We can use...

Tomek Juranek | May 16, 2025

Understanding the Infrastructure Powering AI Agents for Marketing

The marketing world is increasingly captivated by the potential of AI agents. However, it's crucial to recognize that these agents are not simply...

Patrick Lam | May 15, 2025

Meet the Newest OMVPs – Winter 2025 Cohort

We're excited to officially welcome the latest winter cohort of Optimizely Most Valuable Professionals (OMVPs) - a group of passionate tech...

Satata Satez | May 14, 2025

Helper method to encode query string properly

When using Url.ContentUrl() in Optimizely 12, encodes spaces as + in the query string. If you want to encode the spaces as %20, use the below helpe...

sunylcumar | May 13, 2025