How to change WP Sitemap URL
In this example, consider the option to change the location (URL) of the WordPress Sitemap from wp-sitemap.xml
to sitemap.xml
.
add_action( 'init', 'add_new_url_main_sitemap' ); add_filter( 'home_url', 'fix_wp_sitemap_url', 11, 2 ); # Adds a rule with a new sitemap address function add_new_url_main_sitemap() { add_rewrite_rule( '^sitemap\.xml$', 'index.php?sitemap=index', 'top' ); } # Replaces the url from wp-sitemap.xml to sitemap.xml function fix_wp_sitemap_url( $url, $path ) { if ( '/wp-sitemap.xml' === $path ) { return str_replace( '/wp-sitemap.xml', '/sitemap.xml', $url ); } return $url; }
After installing the code, you need to reset the Rewrite Rules (pretty permalinks) for the new rule to take effect. To do this, simply go to the "Settings → Permalinks" admin page.