Drupal Sitemap: Simple XML Sitemap Module Guide
Drupal does not include XML sitemap generation in its core. The standard module is Simple XML Sitemap, which is widely used and well-maintained. It integrates with Drupals content types, taxonomy, views, and custom routes to generate comprehensive sitemaps automatically.
Installing Simple XML Sitemap
Install via Composer: composer require drupal/simple_sitemap. Then enable the module: drush en simple_sitemap. Or go to Extend in the Drupal admin and search for Simple XML Sitemap. After enabling, go to Configuration, then XML Sitemap to access the settings. Your sitemap will be available at yoursite.com/sitemap.xml immediately after configuration.
Configuring Which Content Gets Included
In the Simple XML Sitemap settings, you configure inclusion at the entity type level. Go to Configuration, then XML Sitemap, then the Entities tab. For each content type (Article, Basic page, etc.) you can set whether it should be included, the priority, and the change frequency. You can also override these settings on a per-node basis in the node edit form - scroll to the XML Sitemap section and adjust the settings for that specific piece of content. For taxonomy terms, user profiles, and custom entities, the same configuration interface applies.
Regenerating the Sitemap
Simple XML Sitemap regenerates automatically when content is created or updated, provided cron is running. You can also manually regenerate using Drush: drush simple-sitemap:generate or the short version drush ssg. On the settings page there is also a Rebuild button. If your sitemap appears stale, check that your cron jobs are running correctly - go to Reports, then Status Report in Drupal admin and look for the Last run time under Cron maintenance tasks.
Common Drupal Sitemap Issues
Site base URL incorrect
Simple XML Sitemap uses Drupals configured base URL to build absolute URLs. If your settings.php or Drupal admin has an incorrect trusted host or base URL configured, all sitemap URLs will be wrong. Check Configuration, then System, then Site information, and verify the site URL is your production domain. On hosting platforms, this is sometimes set via environment variables.
Unpublished content appearing in sitemap
Simple XML Sitemap respects Drupals published/unpublished status - only published content is included by default. If you see unpublished content in the sitemap, check whether you have an entity-level override setting. In the node edit form, the XML sitemap section may have been manually set to include that specific node regardless of status.
Sitemap timeout on large sites
On sites with thousands of nodes, sitemap generation can time out or consume excessive memory during cron. Simple XML Sitemap handles this by chunking the generation across multiple cron runs. If you need faster generation, configure a dedicated cron command or increase PHP memory limits for CLI. The module also supports chunked sitemaps automatically - if you exceed the URL limit per file, it creates multiple sitemap files linked from an index.
Related Guides
- WordPress Sitemap: Setup, Fix, and Submit Guide
- Shopify Sitemap: Location, Errors, and How to Submit It
- Wix Sitemap: How It Works and How to Submit It
- Squarespace Sitemap: How It Works and Common Fixes
- Webflow Sitemap: How It Works and How to Submit It
- Django Sitemap: Using the Built-in Sitemaps Framework
- Joomla Sitemap: Generate XML Sitemaps with OSMap