xml dosyalarını phpde bölme
9
●2.892
- 11-02-2009, 19:15:56arkadaşlar sitemde php ile sqlden verileri çekerek sitemap.xml dosyası oluşturuyorum fakat 77k kadar link var haliyle çok büyük olduğu için google kabul etmiyor. bu sitemap oluşturucu php dosyasına kod ekliyerek belli bir Mb yada satırdan sonrasını sitemap2.xml sitemap3.xml gibi parçalara ayırmamız mümkünmüdür.
- 11-02-2009, 20:07:01sayfalama örnegi ile yapabilirsin yapabilirsin
httaccess ile
RewriteEngine on RewriteRule ^sitemap([0-9]+).xml$ sitemap.php?sayfa=$1
yaparsin sitemap.php ye kacinci map oldugunu gönderirsin.
sitemap.php de
$sayfa = $_GET['sayfa']; //kacinci map $kactane = "5000"; //1 sayfaya cekilecek veri sayisi $basla=($sayfa*$kactane)-$kactane; //verileri cekmeye nerden baslicaz sayfa sayisina göre $sql = mysql_query("SELECT * FROM tablo LIMIT $basla,$kactane"); //daha sonra while işlemleri vs.sonra
www.site.com/sitemap1.xml de ilk 5000 veri
www.site.com/sitemap2.xml de 2. 5000 veri
sitemap3.xml 3. 5000 veri gibi ilerler
bu bir örnek sadece geliştirebilirsin. - 11-02-2009, 20:37:20@Lacremel tşk ederim ama senin verdiğin örnek sitemap.php den xml dosyasını okutmak için sanırım benim sorunum mesela sitemapolustur.php dosyası ile sitemdeki linklerin sitemapını program ile değilde direk sqlden çekerek phpde oluşturuyorum sitemapolustur.php yi çalıştırdığımda benim sitemin rootunda sitemap.xml die bir dosya oluşturuyor fakat dosyanın boyutu çok büyük olduğu için google bunu kabul etmiyor belli bir boyuttan sonra yada veriden sonra ikinci bir dosya oluşturarak sitemap2.xml olsun istiyorum mesela.
- 11-02-2009, 21:16:15sqlden bilgileri çektikden sonra sitemap dosyasını oluşturmak için sayfanın sonunda yer alan kodlar aşağıdadır.
$sitemapxml .= "</urlset>"; //if (file_exists("sitemap.xml")){unlink("sitemap.xml");}; $dosya = fopen("sitemap.xml","a"); fwrite($dosya, $sitemapxml); fclose($dosya); echo "Bitti."; ?> - 11-02-2009, 21:21:03hocam kodlari saklicaksaniz benim burda tahmin üzerinden gitmem gerekiyor o da defalarca sürebilir. kodlar bana özel diyorsaniz bir php'ci bulup ücretli olarak yaptirabilirsiniz.wwwbannertakascom adlı üyeden alıntı: mesajı görüntüle
- 11-02-2009, 21:29:55hocam o zaman ben php dosyasını zipliyip siteye atıyım size pm olarak linki gönderiyim kodlar uzun ve herkesin görmesini istemiyorum.
siz scripti yazdirdiginiz ya da aldiginiz kişi ile görüşün bence