Hoe maak je een google sitemap voor MediaWiki
Inleiding
Met een sitemap worden alle pagina's die een website bevat gestructureerd bijgehouden. Dit met als doel dat Google of Yahoo Sitemaps deze kunnen indexeren. Om de zoveel tijd controleren zij dit overzicht voor indexering in de zoekmachine. Ook voor MediaWiki kan je een site map aanbieden. Hoe maak je nu eigenlijk zo'n site map voor Mediawiki?
Stappen
- Maak het volgende bestand aan met bijvoorbeeld Notepad: sitemap.xml.php
- Plaats hierin de volgende code:
\n"; # ----------------------------------------------------- # Start connection # ----------------------------------------------------- $connWikiDB = mysql_pconnect($wgDBserver, $wgDBuser, $wgDBpassword) or trigger_error(mysql_error(),E_USER_ERROR); mysql_select_db($wgDBname, $connWikiDB); # ----------------------------------------------------- # Build query # Skipping redirects and MediaWiki namespace # ----------------------------------------------------- $query_rsPages = "SELECT page_namespace, page_title, page_touched ". "FROM ".$wgDBprefix."page ". "WHERE (page_is_redirect = 0 AND page_namespace NOT IN (8, 9)) ". "ORDER BY page_touched DESC"; # ----------------------------------------------------- # Fetch the data from the DB # ----------------------------------------------------- $rsPages = mysql_query($query_rsPages, $connWikiDB) or die(mysql_error()); # Fetch the array of pages $row_rsPages = mysql_fetch_assoc($rsPages); $totalRows_rsPages = mysql_num_rows($rsPages); # ----------------------------------------------------- # Start output # ----------------------------------------------------- ?>weekly
- -----------------------------------------------------
- Clear Connection
- -----------------------------------------------------
mysql_free_result($rsPages);
- -----------------------------------------------------
- General functions
- -----------------------------------------------------
// Convert timestamp to ISO format function fnTimestampToIso($ts) { # $ts is a MediaWiki Timestamp (TS_MW) # ISO-standard timestamp (YYYY-MM-DDTHH:MM:SS+00:00)
return gmdate( 'Y-m-d\TH:i:s\+00:00', wfTimestamp( TS_UNIX, $ts ) ); }
// Convert string to XML safe encoding function fnXmlEncode( $string ) { $string = str_replace( "\r\n", "\n", $string ); $string = preg_replace( '/[\x00-\x08\x0b\x0c\x0e-\x1f]/', , $string ); return htmlspecialchars( $string ); }
?>
- Plaats deze sitemap in de root van je Mediawiki installatie
- Controleer of het werkt door de sitemap in je browser te open.
Zie het volgende plaatje:
- Ga vervolgens naar Google en/of Yahoo Sitemaps
Hoe meld je je site map aan bij Google
*Google site maps
Hoe meld je je site map aan bij Yahoo
*of Yahoo Sitemaps
- Meldt hier de directe link naar je sitemap
Hoe meld je je site map aan bij Ask
- Voor Ask kies http://submissions.ask.com/ping?sitemap=http://www.JOUWURL.com/sitemap.xml
Tips
Hoe laat je je sitemap automatisch herkennen door zoekmachine
- Als je in je robots.txt de volgende tekst stopt, vinden zoekmachines je sitemap automatisch:
SITEMAP:http://www.leerwiki.nl/sitemap.xml.php
Je laten pingen door Moreover en MSN
voorbeeld: http://api.moreover.com/ping?u=http://www.leerwiki.nl/Hoofdpagina
Handige links
Antwoord niet gevonden?
01:00