Check WordPress Mu Google XML Sitemap Solution for what this file is about.
Filename postedpost.php, placed into mu-plugins folder. Please note, if you have any other code or hacks, you can put all code together, for increase performance.
<?php
// postedpost.php, for WordPress Mu Google XML Sitemap Solution
// http://postedpost.com/2008/10/12/wordpress-mu-google-xml-sitemap/
Function postedpost_do_robots() {
global $current_blog;
if ('0' != $current_blog->public ) {
$siteurl = get_settings('siteurl');
if ( class_exists('GoogleSitemapGeneratorLoader' ) ) {
echo "Sitemap: " . $siteurl . "/sitemap.xml\n";
echo "Sitemap: " . $siteurl . "/sitemap.xml.gz\n";
}
}
}
add_action('do_robots', 'postedpost_do_robots', 20);
Function postedpost_rewrite_rules_array($rules){
$newrules = array();
$newrules['sitemap\.(xml|xml\.gz)$'] = 'index.php?is_page_redirect=1&redirect_method=sitemap&redirect_url=$matches[1]';
return $newrules+$rules;
}
add_filter('rewrite_rules_array', 'postedpost_rewrite_rules_array');
Function postedpost_parse_query($query){
global $blog_id;;
$siteurl = get_settings('siteurl');
$uri = parse_url($siteurl);
if(!empty($query->query_vars['is_page_redirect'])){
$redirect_method = $query->query_vars['redirect_method'];
if ( $redirect_method == 'sitemap' ) {
$redirect_url = $siteurl . '/wp-content/blogs.dir/' . $blog_id . '/files/sitemap.' . $redirect_url;
} else {
$redirect_url = get_settings('siteurl');
Header('HTTP/1.1 301 Moved Permanently');
Header('Location: ' . get_settings('siteurl'));
exit();
}
Header('HTTP/1.1 302 Moved Temporarily');
Header('Location: ' . $redirect_url);
exit();
}
}
add_action('parse_query', 'postedpost_parse_query');
Function postedpost_init() {
global $wp_rewrite;
// postedpost_flush_rewrite_rules
$wp_rewrite->flush_rules();
add_rewrite_tag('%comment_id%', '(([0-9]{1,})');
}
add_action('init', 'postedpost_init');
?>
