Da qualche tempo ho sviluppato alcuni siti che utilizzano uno script "clone" di YouTube. Lo script si chiama Vshare, è molto economico (10 dollari) e per il suo prezzo ha fin troppe funzionalità. Una funzionalità che però manca in Vshare sono le sitemaps. Ho provveduto quindi a creare due script in php che estraggono i video dal database MySQL e generano le sitemap. Lo script è molto semplice, prende tutti i video pubblicati, genera le loro URL (nel formato "friendly" di Vshare) nella sitemap Ne ho predisposte due versioni, una per sitemap generale e una per sitemap video.
Modifica le impostazioni nei seguenti script in base alla configurazione del tuo sito Vshare. Crea una pagina .php e passala a Google come Sitemap Sitemap Generale: <?php echo "<?xml version='1.0' encoding='iso-8859-1'?>"; echo "<urlset xmlns='http://www.google.com/schemas/sitemap/0.84'>"; //INZIO MODIFICHE - Modifica questi dati con la tua configurzione // hostname (di solito localhost) $dbhost = "localhost"; // Nome Database $dbname = "mio_database"; // Username $dbuser = "mio_username"; // Password $dbpass = "mia_password"; //FINE MODIFICHE $conn = mysql_connect($dbhost,$dbuser,$dbpass) or die("Unable to connect to MySQL."); mysql_select_db($dbname,$conn) or die("Unable to connect to Database $dbname"); $sql = "Select VID, title, adddate from video where approve=1 and active=1"; $res = mysql_query($sql,$conn) or die( "Error: " . mysql_error() ); while ($info = mysql_fetch_row($res)) { $SefUrl=strtolower(preg_replace("/[^a-zA-Z0-9]+/","-", $info[1])); //MODIFICA IL NOME DEL TUO SITO echo "<url><loc>http://WWW.MIOSITO.COM/view/".$info[0]."/".$SefUrl. "/</loc><lastmod>".$info[2]."</lastmod><priority>1</priority></url>"; } echo "</urlset>"; mysql_close($conn); ?>
Sitemap Video:
<?php echo "<?xml version='1.0' encoding='iso-8859-1'?>"; echo "<urlset xmlns='http://www.sitemaps.org/schemas/sitemap/0.9' xmlns:video='http://www.google.com/schemas/sitemap-video/1.0'>"; //INZIO MODIFICHE - Modifica questi dati con la tua configurzione // hostname (di solito localhost) $dbhost = "localhost"; // Nome Database $dbname = "mio_database"; // Username $dbuser = "mio_username"; // Password $dbpass = "mia_password"; //FINE MODIFICHE $conn = mysql_connect($dbhost,$dbuser,$dbpass) or die("Unable to connect to MySQL."); // mysql_select_db() function mysql_select_db($dbname,$conn) or die("Unable to connect to Database $dbname"); $sql = "Select VID, title, description, adddate, flvdoname, duration from video where approve=1 and active=1"; // execute SQL Command $res = mysql_query($sql,$conn) or die( "Error: " . mysql_error() ); // Retrieve Results while ($info = mysql_fetch_row($res)) { $SefUrl=strtolower(preg_replace("/[^a-zA-Z0-9]+/","-", $info[1])); $title=str_replace("&","e", $info[1]); $title=str_replace("\"","", $title); $desc=str_replace("&","e", $info[2]); $desc=str_replace("\"","'", $desc); $desc=str_replace("<","", $desc); $desc=str_replace(">","", $desc); echo "<url> //MODIFICA IL NOME DEL TUO SITO <loc>http://WWW.MIOSITO.COM/view/".$info[0]."/".$SefUrl."/</loc> <video:video> <video:content_loc>http://WWW.MIOSITO.COM/flvideo/".$info[4]."</video:content_loc> <video:player_loc allow_embed='yes'> http://WWW.MIOSITO.COM/player.swf</video:player_loc> <video:title>".$title."</video:title> <video:description>".$desc."</video:description> <video:thumbnail_loc> http://WWW.MIOSITO.COM/thumb/".$info[0].".jpg</video:thumbnail_loc> //MODIFICA SE IL SITO CONTIENE VIDEO PER ADULTI <video:family_friendly>Yes</video:family_friendly> <video:duration>".$info[5]."</video:duration> </video:video></url>"; } echo "</urlset>"; mysql_close($conn); ?>
|