From content-management-system
Generates sitemaps in XML/JSON/tree/YAML and URL routing strategies for CMS sites, covering content types, taxonomies, localization, static pages, and redirects.
How this skill is triggered — by the user, by Claude, or both
Slash command
/content-management-system:plan-sitemapThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Generate a comprehensive sitemap and URL routing strategy for the CMS.
Generate a comprehensive sitemap and URL routing strategy for the CMS.
/cms:plan-sitemap --output xml
/cms:plan-sitemap --output tree --include-redirects
/cms:plan-sitemap --output yaml --priority-rules
Extract output format and options from command.
Read existing content types and page definitions:
Invoke relevant skills:
url-routing-patterns - URL conventionspage-structure-design - Page hierarchynavigation-architecture - Navigation structureURL Pattern Rules:
url_patterns:
# Static pages
static:
home: /
about: /about
contact: /contact
privacy: /privacy-policy
terms: /terms-of-service
# Content types
content_types:
Article:
pattern: /blog/{year}/{month}/{slug}
example: /blog/2025/01/getting-started
Product:
pattern: /products/{category}/{slug}
example: /products/electronics/wireless-headphones
Category:
pattern: /products/{slug}
example: /products/electronics
Author:
pattern: /authors/{slug}
example: /authors/jane-smith
Page:
pattern: /{*slug} # Catch-all for CMS pages
example: /about/team/leadership
# Taxonomies
taxonomies:
tags:
pattern: /tags/{slug}
example: /tags/technology
categories:
pattern: /categories/{slug}
example: /categories/news
# Localization
localization:
enabled: true
pattern: /{locale}/{path}
default_locale: en
supported: [en, es, fr, de]
# API routes (excluded from sitemap)
api:
pattern: /api/{version}/{resource}
exclude_from_sitemap: true
XML Sitemap:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
<!-- Homepage -->
<url>
<loc>https://example.com/</loc>
<lastmod>2025-01-15</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/" />
<xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/" />
</url>
<!-- Blog posts -->
<url>
<loc>https://example.com/blog/2025/01/getting-started</loc>
<lastmod>2025-01-15</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
<image:image>
<image:loc>https://cdn.example.com/images/getting-started.jpg</image:loc>
<image:title>Getting Started Guide</image:title>
</image:image>
</url>
<!-- Products -->
<url>
<loc>https://example.com/products/electronics/wireless-headphones</loc>
<lastmod>2025-01-14</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
</urlset>
Sitemap Index (for large sites):
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>https://example.com/sitemaps/pages.xml</loc>
<lastmod>2025-01-15</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemaps/products.xml</loc>
<lastmod>2025-01-14</lastmod>
</sitemap>
<sitemap>
<loc>https://example.com/sitemaps/blog.xml</loc>
<lastmod>2025-01-15</lastmod>
</sitemap>
</sitemapindex>
Tree Output:
SITEMAP STRUCTURE
=================
/ (Home)
├── /about
│ ├── /about/team
│ ├── /about/careers
│ └── /about/press
├── /products
│ ├── /products/electronics
│ │ ├── /products/electronics/headphones
│ │ └── /products/electronics/speakers
│ └── /products/clothing
├── /blog
│ ├── /blog/2025/01/...
│ └── /blog/2024/12/...
├── /contact
├── /privacy-policy
└── /terms-of-service
Legend:
[S] Static page
[D] Dynamic content type
[T] Taxonomy listing
Redirect Configuration:
redirects:
# Permanent redirects (301)
permanent:
- from: /old-about
to: /about
- from: /blog/{slug}
to: /blog/2024/01/{slug}
note: Legacy URL pattern
- from: /products/{id:int}
to: /products/legacy/{id}
note: Numeric ID to slug migration
# Temporary redirects (302)
temporary:
- from: /sale
to: /products?filter=sale
expires: 2025-02-28
# Regex patterns
patterns:
- from: ^/category/(.*)$
to: /categories/$1
type: 301
# Trailing slash normalization
trailing_slash:
enforce: false # No trailing slash
redirect_type: 301
# Case normalization
case_sensitivity:
lowercase: true
redirect_type: 301
SEO Priority Configuration:
priority_rules:
# By content type
content_types:
Page:
default: 0.8
homepage: 1.0
Product:
default: 0.9
featured: 1.0
out_of_stock: 0.3
Article:
default: 0.7
featured: 0.9
age_decay:
after_days: 90
minimum: 0.4
# By depth
depth:
- level: 1
priority: 0.9
- level: 2
priority: 0.7
- level: 3
priority: 0.5
- level: 4+
priority: 0.3
# Change frequency
changefreq:
homepage: daily
product_listing: daily
product_detail: weekly
blog_post: monthly
static_page: yearly
public interface ISitemapGenerator
{
Task<string> GenerateXmlAsync(SitemapOptions options);
Task<SitemapIndex> GenerateIndexAsync();
Task<IEnumerable<SitemapUrl>> GetUrlsAsync(ContentType type);
}
public class SitemapUrl
{
public string Loc { get; set; }
public DateTime LastMod { get; set; }
public ChangeFrequency ChangeFreq { get; set; }
public decimal Priority { get; set; }
public List<AlternateLink> Alternates { get; set; }
public List<ImageInfo> Images { get; set; }
}
url-routing-patterns - URL conventionspage-structure-design - Page hierarchynavigation-architecture - Site structurenpx claudepluginhub melodic-software/claude-code-plugins --plugin content-management-systemAnalyzes existing XML sitemaps for validation issues and generates new sitemaps with industry templates. Includes quality checks for URL limits, HTTP status, and SEO best practices.
Analyzes XML sitemaps for validation errors, broken URLs, SEO quality issues, and generates new ones using industry templates for SaaS, e-commerce, etc. Supports indexes and content splitting.
Audits XML sitemap health (lastmod, URL status, robots.txt) or generates new sitemaps with industry-specific templates for SEO planning.