WP_Sitemaps::register_rewrites()

In this article

Registers sitemap rewrite tags and routing rules.

Source

public function register_rewrites() {
	// Add rewrite tags.
	add_rewrite_tag( '%sitemap%', '([^?]+)' );
	add_rewrite_tag( '%sitemap-subtype%', '([^?]+)' );

	// Register index route.
	add_rewrite_rule( '^wp-sitemap\.xml$', 'index.php?sitemap=index', 'top' );

	// Register rewrites for the XSL stylesheet.
	add_rewrite_tag( '%sitemap-stylesheet%', '([^?]+)' );
	add_rewrite_rule( '^wp-sitemap\.xsl$', 'index.php?sitemap-stylesheet=sitemap', 'top' );
	add_rewrite_rule( '^wp-sitemap-index\.xsl$', 'index.php?sitemap-stylesheet=index', 'top' );

	// Register routes for providers.
	add_rewrite_rule(
		'^wp-sitemap-([a-z]+?)-([a-z\d_-]+?)-(\d+?)\.xml$',
		'index.php?sitemap=$matches[1]&sitemap-subtype=$matches[2]&paged=$matches[3]',
		'top'
	);
	add_rewrite_rule(
		'^wp-sitemap-([a-z]+?)-(\d+?)\.xml$',
		'index.php?sitemap=$matches[1]&paged=$matches[2]',
		'top'
	);
}

Changelog

VersionDescription
5.5.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.