Sitemap oluşturabilmek için aşağıdaki kodları hazırladım. ancak harita dizini (urlset) vermeye çalıştığımda hata alıyorum.
<?php
header("Content-type: text/xml");
// DB Bağlantısı
$host= "xxx";
$user= "xxx";
$pass= "xxx";
$dbnm= "xxx";
mysql_connect($host, $user, $pass) or die ("Sunucuya Bağlanılamadı");
mysql_select_db($dbnm) or die ("Veritabanına bağlanılamadı");
$sql = "SELECT *
FROM Yazilar
ORDER BY id ASC";
// XML Temel İşlemleri
$belge= new DOMDocument("1.0", "UTF-8");
$urlset = $belge->createElement("urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"");
$belge->appendChild($urlset);
// sorgu döngüsü
$sorgu=mysql_query($sql);
while($sonuc=mysql_fetch_array($sorgu)) {
$alt=$belge->createElement("url");
$urlset->appendChild($alt);
$loc=$belge->createElement("loc");
$lastmod=$belge->createElement("lastmod");
$changefreq=$belge->createElement("changefreq");
$priority=$belge->createElement("priority");
$alt->appendChild($loc);
$alt->appendChild($lastmod);
$alt->appendChild($changefreq);
$alt->appendChild($priority);
$gelenveri1=$belge->createTextNode("http://xxx.com/?page=post&id=".$sonuc['id']); // loc
$gelenveri2=$belge->createTextNode($sonuc['tarih']); // lastmod
$gelenveri3=$belge->createTextNode("weekly"); // changefreq // kargo_suresi
$gelenveri4=$belge->createTextNode("0.5"); // priority
$loc ->appendChild($gelenveri1);
$lastmod ->appendChild($gelenveri2);
$changefreq ->appendChild($gelenveri3);
$priority ->appendChild($gelenveri4);
}
$xml_olustur = $belge->saveXML();
echo $xml_olustur;
mysql_close();
?>$urlset = $belge->createElement("urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9""); satırında çifttırnak içerisinde boşluksuz ve türkçe karaktersiz ne yazarsam sorun yok (urlset gibi) ama bu seferde webmasters tools hata veriyor. yukarıdaki gibi "urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" şeklinde yazarsam kod çalışmıyor
şaştım kaldım