Gute Google Sitemap

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
austrian-i
Mitglied
Beiträge: 724
Registriert: 28.08.2004 18:01

Gute Google Sitemap

Beitrag von austrian-i »

Also ich verwende den hier, der eh super funktioniert:

Code: Alles auswählen

<?php 

$phpbb_root_path = '';  // muß angepasst werden, falls eine Ebene unter dem Forumsordner. 

define('IN_PHPBB', true); 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
$script_name = preg_replace('/^\/?(.*?)\/?$/', "\\1", trim($board_config['script_path'])); 
$server_name = trim($board_config['server_name']); 
$server_protocol = ( $board_config['cookie_secure'] ) ? 'https://' : 'http://'; 
$server_port = ( $board_config['server_port'] <> 80 ) ? ':' . trim($board_config['server_port']) . '/' : '/'; 
$server_url = $server_protocol . $server_name . $server_port . $script_name; 
if(substr($server_url, -1, 1) != "/") {   $server_url .= "/"; } 
$server_url = code_utf8($server_url); 
$zeit = time(); 
$pre_timezone = date('O', $zeit); 
$time_zone = substr($pre_timezone, 0, 3).":".substr($pre_timezone, 3, 2); 


$result = mysql_query("SELECT topic_id,post_time  FROM " . POSTS_TABLE ) ; 
while( $row =  mysql_fetch_assoc($result)) { 
   if($last_time[$row["topic_id"]] < $row["post_time"]) { $last_time[$row["topic_id"]] = $row["post_time"]; } 
} 

echo '<?xml version="1.0" encoding="UTF-8"?> 
<urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> 
   <url> 
      <loc>'.$server_url.'</loc> 
      <changefreq>always</changefreq> 
      <priority>1.0</priority> 
   </url> 
'; 


$result = mysql_query("SELECT topic_id,topic_replies,topic_time FROM " . TOPICS_TABLE . " ORDER BY topic_id DESC LIMIT 50000") ; 
while( $row =  mysql_fetch_assoc($result)) { 
   $topicId = $row["topic_id"] ; 
   $alter = $zeit - $last_time[$row["topic_id"]] ; 
   $zeitbonus = max(min(round((600000 - $alter ) / 80000),7),0) ; 
   $last_time_post = date("Y-m-d\TH:i:s",$last_time[$row["topic_id"]]) . $time_zone ; 
   if ($alter < 604800) { $changefreq = 'weekly'; } else { $changefreq = 'monthly'; } 
   if ($alter < 84000) { $changefreq = 'daily'; } 
   $topicpriority = min(( $row["topic_replies"] + 1 + $zeitbonus ),9) ; 
echo "   <url> 
      <loc>".$server_url."ftopic$topicId.html</loc> 
      <lastmod>$last_time_post</lastmod> 
      <changefreq>$changefreq</changefreq> 
      <priority>0.$topicpriority</priority> 
   </url> 
"; 
} 

echo '</urlset>'; 


function code_utf8($text) { 
   $array_1 = array("&","\"","'",">","<",""); 
   $array_2 = array("&",""","&apos;",">","<",""); 
   for($x=0;$x<4;$x++){ 
      $text = str_replace($array_1[$x],$array_2[$x],$text); 
   } 
   return $text; 
} 
?>
Aber wie kann ich das verändern, dass Threads aus bestimmten Foren (zb Foren-ID 12) nicht in der Sitemap angezeigt werden?
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“