Put every page in /sitemap.xml itself, and list pages only in the languages they have

Featurekamo-marketing
Shipped
September 11, 2026 at 8:41 PM UTC
Author
Kamo
Commit
ae29811

/sitemap.xml was an index, so opening it showed 79 file names rather than the site's pages. - /sitemap.xml is now one <urlset> with every page: 18,700 of them, each at its English address, with every language version it exists in as an hreflang alternate. That is within the protocol's 50,000-URL / 50 MB limit for a single file; past it, the file is rejected whole. Changelog entries go in without their alternates, which would put the file near 60 MB. Each entry page declares its languages itself. - The per-language files, where every language version is a URL of its own, move to /sitemap-index.xml. robots.txt names both files. - A page whose copy has its own message namespace is listed, and names alternates, only in the locales that namespace is really translated into: at least 90% of its strings present, fewer than 30% identical to the English (app/lib/message-locales.ts). The new **************** article and /resources have no translations yet. They were in all 21 locales, 20 of them the English page under another prefix. - Collection pages read the same live measure for `collections` in place of the hard-coded COLLECTION_CONTENT_LOCALES. Swahili collection copy has been translated since that list was written, so 132 real Swahili pages were pointing their canonical at English.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing