Hallo,
ich habe mit Hilfe von http://bueltge.de/google-news-qu…ess-werden/836/ eine Google News Sitemap erstellt. Bei einer einfachen Wordpress installation funktioniert dies einwandfrei.
Nun möchte ich das Ganze auf einer MultiSite installation anwenden. Kann mir jemand sagen, wie ich die Parameter ändern muss, dass sich das Script die richtigen Datensätze holt?
Ich möchte es gerne mit diesem Tabellen-Prefix realisieren:
wp_2_
Ich lade das Script dann einfach in den Root meines Servers und rufe die einzelnen Sitemaps dann wie folgt auf:
meineadresse.de/sitemap-1.php
meineadresse.de/sitemap-2.php
usw.
Würde mich sehr freuen, wenn mir hier jemand weiterhelfen könnte!
Hier nochmal der Code, um den es sich handelt:
PHP
<?php /** * Google news sitemap with WordPress * @author Frank Bueltge - bueltge.de * @link http://bueltge.de/google-news-quelle-mit-wordpress-werden/836/ */ require('wp-load.php'); // XML header echo '<?xml version="1.0" encoding="utf-8"?>' . "\n"; // urlset echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9">' . "\n"; // Select posts; set limit 20 $rows = $wpdb->get_results("SELECT DISTINCT ID, post_date_gmt, post_title FROM $wpdb->posts, $wpdb->term_relationships, $wpdb->term_taxonomy WHERE $wpdb->term_relationships.object_id = $wpdb->posts.id AND post_status = 'publish' AND post_type = 'post' AND $wpdb->term_taxonomy.term_taxonomy_id = $wpdb->term_relationships.term_taxonomy_id AND $wpdb->term_taxonomy.taxonomy = 'category' AND $wpdb->term_taxonomy.term_id IN (7) ORDER BY $wpdb->posts.post_date_gmt DESC LIMIT 0, 20"); // sitemap data foreach ($rows as $row) { echo "\t" . '<url>' . "\n"; echo "\t\t" . '<loc>'; echo get_permalink($row->ID); echo '</loc>' . "\n"; echo "\t\t" . '<news:news>' . "\n"; echo "\t\t\t" . '<news:publication>' . "\n"; echo "\t\t\t\t" . '<news:name>' . get_bloginfo('name') . '</news:name>' . "\n"; //eventuell haendisch pflegen echo "\t\t\t\t" . '<news:language>' . get_option('rss_language') . '</news:language>' . "\n"; echo "\t\t\t" . '</news:publication>' . "\n"; echo "\t\t\t" . '<news:genres>pressrelease, blog, UserGenerated</news:genres>' . "\n"; //eventuell haendisch pflegen echo "\t\t\t" . '<news:publication_date>'; $thedate = substr($row->post_date_gmt, 0, 10); $thetime = substr($row->post_date_gmt, 11, 20); echo $thedate . 'T' . $thetime . 'Z'; echo '</news:publication_date>' . "\n"; echo "\t\t\t" . '<news:title>' . htmlspecialchars( $row->post_title ) . '</news:title>' . "\n"; $tags = wp_get_post_tags( $row->ID, array('fields' => 'all') ); $tagcount = count($tags); if ($tagcount > 0) { echo "\t\t\t" . '<news:keywords>'; for ($i = 0; $i < $tagcount; $i++) { echo $taglist = str_replace( "'", '', str_replace( '"', '', urldecode($tags[$i]->name) ) ); if ( $i != $tagcount-1 ) echo ', '; } echo '</news:keywords>' . "\n"; } echo "\t\t" . '</news:news>' . "\n"; echo "\t" . '</url>' . "\n"; } echo '</urlset>'; ?>