Aurora Sitemap

A sitemap is used by search engines to more efficiently crawl your Stores contents without needing to hit the more resource intensive indexing pages throughout the site. Aurora provides support for dynamic sitemaps to be generated in both HTML and XML and offers examples of both in the Aurora Demo templates.

This article describes what sitemaps Aurora provides and how to use them.

Introduction

A sitemap is used by search engines to more efficiently crawl your Stores contents without needing to hit the more resource intensive indexing pages throughout the site. Aurora provides support for dynamic sitemaps to be generated in both HTML and XML and offers examples of both in the Aurora Demo Example Front-end Templates.

Every Aurora Store client has access to create and modify their own sitemaps and can produce sitemaps to the definitions set out by Google (or any other desired standard) without any involvement from Aurora Commerce.

Broadly speaking, the following information is available for use on the sitemaps:

  • Product Categories: a full list of every single category on the website whereby products exist in that category and have stock, e.g. /clothes/
    • NB: this does not include any filters
  • The list of all the products on the site
    •  You can include the product URL and the last date it was modified
  • All content pages
  • All blog posts

Caching

The Aurora Sitemaps are cached for a 24 hour period, ensuring the best performance without any impact on the Live Store during peak periods.

🚧

While this does mean that some pages may become out of date or even unavailable (perhaps as products go out of stock), this trade-off is necessary to ensure that the Store can perform without running into resource problems during peak periods when the Aurora Sitemaps are requested by a consumer (GoogleBot, etc.).

Managing the Sitemaps

Where to access the Sitemaps

The HTML Sitemap can be accessed on your store from the /sitemap URL, please see the example provided from the Aurora Demo Store below.

http://demo.auroracommerce.com/sitemap

The XML Sitemap can also be accessed on your store from the /sitemap.xml URL. An example is provided below:

http://demo.auroracommerce.com/sitemap.xml

Where to find the Front-end Templates

The templates that should be used to control the HTML and XML Sitemaps should be placed into your template directory and named as follows:

HTML Sitemap:

templates/your-template-dir/content/sitemap.tpl.html

XML Sitemap: 

templates/your-template-dir/datafeeds/google\_sitemap.tpl.xml

Variables available in the Sitemap page

The following is a list of variables that can be accessed by the Aurora Front-end Templates under any of the two (HTML and XML) Sitemap pages.

Variable nameTypeDescription
$product_categoriesArray [ $category ]An array of live Product Categories that contain stocked products.

Categories will only be included here if they:

Are set in the Aurora Back-end to be displayed.
Have products in them that can be listed on the Store.

This prevents empty product categories from being listing in your sitemaps.
$categoryContainerA Container holding all of a Product Category details.
$category.idIntegerThe Internal ID Aurora uses to identify a Product Category.
$category.category_nameStringThe Name of the Product Category.
$category.category_urlStringThe Relative URL of the Product Category, e.g. /books/
$category.childrenArray [ $category ]An array of live product subcategories that contain stocked products within this Parent Category.
$blog_postsArray [ $blog_post ]An array of live Blog Posts that are configured to appear in the sitemap.

Blog Posts will only be included here if they:

Are set in the Aurora Back-end to be live.
Are set in the Aurora Back-end to Show in Sitemap.

This variable will only be present if the Blog is enabled in your Aurora Back-end Store Settings, otherwise it will not be set at all.
$blog_postContainerA Container holding all of a Blog Post's details.
$blog_post.idIntegerThe Internal ID Aurora uses to identify a Blog Post.
$blog_post.titleStringThe Title given to the Blog Post.
$blog_post.date_modifiedDate StringThe date Blog Post was last updated.
$productsArray [ $product ]An array of Products that currently have eligible stock levels for the Store.

Please be aware that this array will currently include non-live Products if its stock settings would permit it to be listed.
$product.idIntegerThe Internal ID Aurora uses to identify a Product.
$product.product_nameStringThe name of the Product.
$product.product_filenameStringThe Relative URL of the Product, e.g. /books/sku00001.html
$product.image_idIntegerThe Internal ID Aurora uses to identify a Product Image.
$product.date_modifiedDate StringThe date Product was last updated.
$page_contentArray [ $page ]An array of live Content Pages that are configured to appear the sitemap.

Content Pages will only be included here if they:

Are set in the Aurora Back-end to be live.
Are set in the Aurora Back-end to Show in Sitemap.
* Are not set in the Aurora Back-end as a Members page.
$pageContainerA Container holding all of a Content Page details.
$page.idIntegerThe Internal ID Aurora uses to identify a Content Page.
$page.page_parentIntegerThe Internal ID Aurora uses to identify a Content Page.

This is the ID of the parent to which this Content Page belongs, if it has one.
$page.page_filenameStringThe Relative URL of the Page, e.g. /about-us/
$page.date_modifiedDate StringThe date Page Content was last updated.
$page.childrenArray [ $page ]An array of live Content Pages that are configured to appear the sitemap within this parent page.