XML Sitemap Generator: Configuration
All XML Sitemap Generator settings with defaults, multi-Sales-Channel setup with slug, output directory, robots.txt and practical examples.
XML Sitemap Generator: Configuration
Live Demo: Try this and other plugins live — no installation, no risk: demo.markus-michalski.net
Where do I find the settings?
In Shopware Admin under Extensions > My Extensions > Advanced XML Sitemap. The configuration consists of six cards: Manual Generation, Scheduled Generation, Content Types, Features, Filter Options and Advanced Settings.
At the top of the configuration you select the Sales Channel. All settings except the interval of the scheduled generation can be overridden per Sales Channel. Without an override, the value from All Sales Channels applies.
Scheduled Generation
| Setting | Default | Description |
|---|---|---|
| Enable automatic generation | On | Generates the sitemap automatically at the configured interval |
| Generation interval | Daily | Hourly, Every 6 hours, Every 12 hours, Daily, Weekly |
The switch must be on in All Sales Channels, otherwise the task does not run at all. After that you can switch it off for individual Sales Channels. The interval applies to the task as a whole and is read only from the value for All Sales Channels, a different value per Sales Channel has no effect.
Content Types
| Setting | Default | Description |
|---|---|---|
| Include Products | On | Put product URLs into sitemap-products.xml |
| Include Categories | On | Put category URLs into sitemap-categories.xml |
| Include CMS Pages / Landing Pages | On | Put landing pages and pages of the service and footer navigation into sitemap-cms.xml |
| Include Manufacturers | Off | Put manufacturer URLs into sitemap-manufacturers.xml |
Shopware 6 does not create SEO URLs for manufacturers by default. Without a third-party plugin that provides these URLs, the manufacturer sitemap stays empty.
Features
| Setting | Default | Description |
|---|---|---|
| Generate Hreflang Tags | On | Adds alternate language URLs for multi-language shops |
| Include Product Images | On | Adds image:image tags to the product sitemaps (the logo for manufacturers) |
Filter Options
| Setting | Default | Description |
|---|---|---|
| Exclude empty categories | On | Categories without active products are not included |
| Include product variants | Off | Include variants in addition to main products |
| Exclude out of stock products | Off | Products with stock = 0 are not included |
Which entries exactly end up in the files is described on Sitemap contents.
Advanced Settings
| Setting | Default | Description |
|---|---|---|
| Max URLs per Sitemap File | 50000 | Google limit: 50,000 URLs per file. Values below 1 or above 50,000 are set to 50,000 |
| Output Directory | sitemap | Relative to the public/ directory |
| Sales Channel Slug | (empty) | Configure this per Sales Channel! Used as the subdirectory name. If empty, the Sales Channel ID is used |
Output path
Each Sales Channel writes into its own subdirectory so that several Sales Channels do not overwrite each other:
public/<output directory>/<slug>/sitemap.xml
For the output directory the plugin removes backslashes, null bytes, dot sequences (..) as well as duplicate and surrounding slashes. If the field is empty, or empty after cleaning, sitemap is used.
Setting up multiple Sales Channels
At the top of the plugin configuration switch to the respective Sales Channel and set the Sales Channel Slug field:
| Sales Channel | Slug (example) | Resulting path |
|---|---|---|
| Main shop (B2C) | main |
public/sitemap/main/sitemap.xml |
| B2B shop | b2b |
public/sitemap/b2b/sitemap.xml |
| English shop | en |
public/sitemap/en/sitemap.xml |
Slug rules
- Allowed characters:
a-z,0-9, hyphen (-) and underscore (_) - Uppercase letters become lowercase, all other characters (including umlauts) are replaced with
-, repeated hyphens are merged, hyphens and underscores at the start and end are removed - The slug must be unique across all Sales Channels, otherwise the sitemaps overwrite each other
- If the field is empty (or empty after cleaning), the plugin uses the Sales Channel ID, for example
public/sitemap/383daa095f4449839949a420f0759a7e/sitemap.xml
If the slug or the output directory changes, the sitemap URLs change. Then update
robots.txtand your Google Search Console entries. Files at the old path stay in place until you delete them.
robots.txt
Add the sitemap index file per Sales Channel with its slug. The plugin does not ping search engines, you have to register the address yourself, in robots.txt and optionally in Google Search Console.
# Main shop (slug: main)
Sitemap: https://your-shop.com/sitemap/main/sitemap.xml
# B2B shop (slug: b2b, on a different domain)
Sitemap: https://b2b.your-shop.com/sitemap/b2b/sitemap.xml
Practical examples
Only products and categories, without images: Switch off Include CMS Pages / Landing Pages and Include Product Images.
Large shop with variants: Enable Include product variants. As soon as a type reaches the per-file limit, several numbered files are created, which the index sitemap.xml lists together.
Only visible, in-stock goods: Enable Exclude out of stock products and leave Exclude empty categories on.
Sitemaps generated by cron at night instead of by the task: Switch off Enable automatic generation and set up the cron job from Generation and console command.