URLs for Platform CMS Entries

The URL is hardcoded for pages that are generated via a template and are tied to a platform CMS group, such as Products, ProductCollections, Categories, and Brands.

Shopify

  • Products: /products/product-name
  • ProductCollections: /collections/collection-name

BigCommerce

  • Products: /products/product-name
  • Categories /categories/category-name
  • Brands: /brands/brand-name

Content Item Name rules

  1. CmsEntry.Name gets the Product.Slug for the Products model.
    • Cms.Entry.Name for Shopify Products and Collections is not the product title field from Shopify, but rather the product.slug or collections.slug from the CMS that contains Shopify's Product or Collection handle. This is because the URL and handle need to be unique per Product/Collection while the title in Shopify does not.
    • BigCommerce uses the same default rule except the CmsEntry.Name is a slug version of the field Name
  2. CmsEntry.Slug is the slugged version of CmsEntry.Name
  3. Page.Path is also the slugged version of CmsEntry.Name
    • Page.Path goes through a sanitizer that removes special characters.

URLs for Manually-Created CMS Entries tied to a Template

the URL path will by default be /{contentGroupName}/{contentItemName} for pages that are generated by a Template and are tied to a CMS group that was manually created, such as blogs.

If you have specific needs for that Template, you can customize the URL structure that generates the page paths. See Custom URL Structure.

URLs for Custom Pages not tied to a Template

One-off custom pages that are created manually have a Page Path field input. There is validation to ensure that no duplicate paths exist prior to saving.

Alternate Paths

Shopify automatically creates URLs for products nested within collections.

For example, if you have a Product named Potato and it is part of two Collections Baked and Salad then the following URLs will be created:

  • /products/potato
  • /collections/baked/products/potato
  • /collections/salad/products/potato

📘

The latter two alternate paths do not have associated pages in Frontend, rather, we create the HTML on the backend and add them to the sitemap.xml file.


Did this page help you?