Add hreflang alternate links to sitemap.xml#99
Merged
Conversation
Closes #83. When enabled, <link rel="alternate" hreflang="..." href="..."> tags found on each page are added to that page's sitemap entry as <xhtml:link> alternates, following Google's localized-versions sitemap format.
Following the same opt-out convention as noindex/canonical handling. Use --no-hreflang to disable adding <xhtml:link> alternates read from <link rel="alternate" hreflang="..."> tags. Verified pages without a hreflang attribute (no <link> tags, stylesheet/canonical/RSS alternate links) produce no <xhtml:link> output, so there's no regression for sites that don't use hreflang.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
<link rel="alternate" hreflang="..." href="...">tags are now read and added to that page's sitemap entry as<xhtml:link rel="alternate" hreflang="..." href="..."/>, following Google's localized-versions sitemap formatxmlns:xhtmlnamespace to the sitemap header, required for<xhtml:link>elements--no-hreflangto disable itTest plan
hreflangalternate links and confirmed the correct<xhtml:link>entries appear in the output sitemaphreflangattribute (no<link>tags at all,rel="stylesheet",rel="canonical", andrel="alternate"RSS links withouthreflang) produce no<xhtml:link>output — no regression for sites that don't use hreflang--no-hreflangdisables the feature entirelyGenerated by Claude Code