Estive dando uma olhada nesses sitemaps, e acabei escrevendo um script simples em php para fazer isso. É um tanto manual mas pode ser útil.
Vejamos:
<html>
<body>
<?
// Inicio do XML
$ini = "";
$ini .= '<?xml version="1.0" encoding="UTF-8"?>' . chr(10);
$ini .= '<urlset' . chr(10);
$ini .= ' xmlns="http://www.google.com/schemas/sitemap/0.84"' . chr(10);
$ini .= ' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"' . chr(10);
$ini .= ' xsi:schemaLocation="http://www.google.com/schemas/sitemap/0.84' . chr(10);
$ini .= ' http://www.google.com/schemas/sitemap/0.84/sitemap.xsd">' . chr(10) . chr(10);
// Uma pagina que segue uma sequencia pela id, de 1 a 500
$mod = "";
for ($i = 1; $i <= 500; $i++) {
$mod .= "<url>" . chr(10);
$mod .= " <loc>http://www.seusite.com/modelo.php?id=" . $i . "</loc>" . chr(10);
$mod .= " <priority>0.5</priority>" . chr(10);
$mod .= " <changefreq>daily</changefreq>" . chr(10);
$mod .= "</url>" . chr(10);
}
// Aqui uma sequencia com duas variaveis, usamos "&" no lugar de "&"
$sum = "";
for ($i = 1; $i <= 100; $i++) {
$sum .= "<url>" . chr(10);
$sum .= " <loc>http://www.seusite.com/sumula.php?grupo=1&pag=" . $i . "</loc>" . chr(10);
$sum .= " <priority>0.5</priority>" . chr(10);
$sum .= " <changefreq>daily</changefreq>" . chr(10);
$sum .= "</url>" . chr(10);
}
// Para encerrar o sitemap
$fim = "</urlset>";
// Colocamos tudo numa variavel
$sitemap = $ini . $mod . $sum . $fim;
// E gravamos um arquivo chamado "sitemap.xml"
$fp = fopen("sitemap.xml", "w+");
fwrite($fp, $sitemap);
fclose($fp);
// Agora mostramos uma mensagem para terminar
echo("Sitemap criado com sucesso!");
?>
</body>
</html>
É possivel criar rapidamente um sitemap completo em sites que seguem muito esse tipo de sequência. Neste exemplo foi criado um site map das seguintes páginas:
modelo.php?id=1
modelo.php?id=2
...
modelo.php?id=500
sumula.php?grupo=1&pag=1
sumula.php?grupo=1&pag=2
...
sumula.php?grupo=1&pag=100
"changefreq" é a frequência de atualização da página. Pode ser:
Sempre
<changefreq>always</changefreq>
A cada hora
<changefreq>hourly</changefreq>
Diariamente
<changefreq>daily</changefreq>
Semanalmente
<changefreq>weekly</changefreq>
Anualmente
<changefreq>yearly</changefreq>
Nunca
<changefreq>never</changefreq>
"priority" é a importância da página dentro site. Varia de 0.0 até 1.0, a exemplo de:
Prioridade baixa
<priority>0.0</priority>
Prioridade média
<priority>0.5</priority>
Prioridade máxima
<priority>1.0</priority>
É isso. O script acima pode ser adaptado para qualquer site, bastando adicionar tantas sequências quanto forem necessária, e o XML criado é válido.
Flw!
Edição feita por: SuperEly, 27/11/2005, 00:55.