站点地图错误,使用php创建它

时间:2012-02-11 05:04:05

标签: php xml sitemap

我正在尝试为谷歌创建一个站点地图,我正在使用php w \ a .htaccess文件。我得到了htaccess文件工作得很好,这是我在PHP中的格式。谷歌给了我这个错误: 错误 不支持的文件格式 您的站点地图似乎不是受支持的格式。请确保其符合我们的Sitemap指南并重新提交。

我无法弄清楚是为了挽救我的生命。在本地查看时,看起来它工作得很好。这是我的代码:

<?php
$pictureCount = file_get_contents('http://dlolpics.com/funnyPicsHigh.html');
echo '<?xml version="1.0" encoding="UTF-8"?>
<urlset http://www.sitemaps.org/schemas/sitemap/0.9 xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">';



set_time_limit(0); 
for($i = 1;$i <= $pictureCount;$i++){

if($i > 0 && $i < 2001){
    $directory_to_use = 1;

}elseif($i > 2000 && $i < 4001){
    $directory_to_use = 2;

}elseif($i > 4000 && $i < 6001){
    $directory_to_use = 3;

}elseif($i > 6000 && $i < 8001){
    $directory_to_use = 4;

}elseif($i > 8000 && $i < 10001){
    $directory_to_use = 5;

}elseif($i > 10000 && $i < 12001){
    $directory_to_use = 6;

}elseif($i > 12000 && $i < 14001){
    $directory_to_use = 7;

}elseif($i > 14000 && $i < 16001){
    $directory_to_use = 8;

}elseif($i > 16000 && $i < 18001){
    $directory_to_use = 9;

}elseif($i > 18000 && $i < 20001){
    $directory_to_use = 10;

}elseif($i > 20000 && $i < 22001){
    $directory_to_use = 11;

}
echo '<url>
<loc>http://www.dlolpics.com/?p='.$i.'</loc>
    <image:image>
        <image:loc>http://www.dlolpics.com/images/'.$directory_to_use.'/'.$i.'.jpg</image:loc>
    </image:image>
</url>';
usleep(290); 
}

echo '</urlset>';

?>

1 个答案:

答案 0 :(得分:2)

$pictureCount = file_get_contents('http://dlolpics.com/funnyPicsHigh.html');

echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n"
   . '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" ' . "\n"
   . '        xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">' . "\n";

for ($i = 0; $i < $pictureCount; $i++) {
    $dir = floor($i / 2000) + 1;
    $url = "http://www.dlolpics.com/images/$dir/" . ($i + 1) . '.jpg';
    echo '<url>'
       . '<loc>' . htmlentities($url) . '</loc>'
       . '<image:image><image:loc>' . htmlentities($url) . '</image:loc></image:image>'
       . "</url>\n";
}
echo '</urlset>';