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 name | Type | Description |
---|---|---|
$product_categories | Array [ $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. |
$category | Container | A Container holding all of a Product Category details. |
$category.id | Integer | The Internal ID Aurora uses to identify a Product Category. |
$category.category_name | String | The Name of the Product Category. |
$category.category_url | String | The Relative URL of the Product Category, e.g. /books/ |
$category.children | Array [ $category ] | An array of live product subcategories that contain stocked products within this Parent Category. |
$blog_posts | Array [ $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_post | Container | A Container holding all of a Blog Post's details. |
$blog_post.id | Integer | The Internal ID Aurora uses to identify a Blog Post. |
$blog_post.title | String | The Title given to the Blog Post. |
$blog_post.date_modified | Date String | The date Blog Post was last updated. |
$products | Array [ $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.id | Integer | The Internal ID Aurora uses to identify a Product. |
$product.product_name | String | The name of the Product. |
$product.product_filename | String | The Relative URL of the Product, e.g. /books/sku00001.html |
$product.image_id | Integer | The Internal ID Aurora uses to identify a Product Image. |
$product.date_modified | Date String | The date Product was last updated. |
$page_content | Array [ $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. |
$page | Container | A Container holding all of a Content Page details. |
$page.id | Integer | The Internal ID Aurora uses to identify a Content Page. |
$page.page_parent | Integer | The 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_filename | String | The Relative URL of the Page, e.g. /about-us/ |
$page.date_modified | Date String | The date Page Content was last updated. |
$page.children | Array [ $page ] | An array of live Content Pages that are configured to appear the sitemap within this parent page. |
Updated over 2 years ago