Sitemap konusunda çok istek geliyor , db den direk çekerek yapsak olmazmı diye.Bunun için kullandığını scripti biraz bilmeniz gerekiyor.
Mysql den veri çekerek sitemap yapmayı anlatabildiğim şekilde anlatayım.
İçerik tablo yapım şu şekilde
oyun
--id
--title
.......
Benim bu tablo yapısında kullanacağım id ve title(seo yaptıgım için) alanlarım, Seosu olmayanlar title alanını pas geçebilir.Ör: dosya.php?id=5 gibi linkleri olanlara oyun tablosundan sadece id alanı yeterli olucaktır.
Burda önemli olan nokta içeriği sıralamak.
Bunun için scriptinizi biraz bilmelisiniz.Mesela bende url yapan bir fonksiyon var:
Burda sadece içeriği sıraladık, çoğaltabiliriz tabiki
soru ve takıldıgınız yerleri konu altından sürekli cevaplayabilirim.
Mysql den veri çekerek sitemap yapmayı anlatabildiğim şekilde anlatayım.
İçerik tablo yapım şu şekilde
oyun
--id
--title
.......
Benim bu tablo yapısında kullanacağım id ve title(seo yaptıgım için) alanlarım, Seosu olmayanlar title alanını pas geçebilir.Ör: dosya.php?id=5 gibi linkleri olanlara oyun tablosundan sadece id alanı yeterli olucaktır.
PHP:
<?php
#
/*
Coded by Selim61
http://www.sistembilgisi.com/web-programlama/php-ve-mysql/mysql-den-veri-cekerek-sitemap-yapma.html
*/
$siteurl="http://www.selim61.com"; //site adresi
mysql_connect("localhost", "kullanici adi", "sifre") or die ("Hata: veritabanina baglanilamadi!.Bilgiler yanlis");
mysql_select_db("db_adi") or die ("Hata: veritabanina baglanilamadi!.Db yok");
header('Content-type: text/xml');
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-9\" ?>\n";
echo "<urlset xmlns=\"http://www.google.com/schemas/sitemap/0.84\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.google.com/schemas/sitemap/0.84 http://www.google.com/schemas/sitemap/0.84/sitemap.xsd\">";
//seo url yapmak için kullandıgım fonksiyon herkes kendi sitesininkisini bilecek
function seourl($id,$baslik) {
$baslik = str_replace(" ","-",$baslik);
$baslik = str_replace("'","_",$baslik);
$baslik = str_replace(":","_",$baslik);
$baslik = str_replace("ä","a",$baslik);
$baslik = str_replace("ö","o",$baslik);
$baslik = str_replace("ü","u",$baslik);
$baslik = str_replace("ş","s",$baslik);
$baslik = str_replace("ç","c",$baslik);
$baslik = str_replace("ı","i",$baslik);
$baslik = str_replace("ğ","g",$baslik);
$baslik = str_replace("Ö","o",$baslik);
$baslik = str_replace("Ü","u",$baslik);
$baslik = str_replace("Ş","s",$baslik);
$baslik = str_replace("Ç","c",$baslik);
$baslik = str_replace("İ","i",$baslik);
$baslik = str_replace("Ğ","g",$baslik);
$baslik = strtolower($baslik);
$seourl = $siteurl."/oyun/".$id."/".$baslik.".html";
return $seourl;
}
//içeriğimi sıralayayım
$sorgu = mysql_query("SELECT oid, title FROM files WHERE status = '1'");
while ($sonuc = mysql_fetch_array($sorgu)) {
$oid = $sonuc['id'];
$oadi = $sonuc['title'];
echo "\n<url>\n<loc>".seourl($oid, $oadi)."</loc>\n<changefreq>always</changefreq>\n<priority>1.0</priority>\n</url>";
}
echo "\n</urlset>";
?>
Bunun için scriptinizi biraz bilmelisiniz.Mesela bende url yapan bir fonksiyon var:
PHP:
function seourl($id,$baslik) {
$baslik = str_replace(" ","-",$baslik);
$baslik = str_replace("'","_",$baslik);
$baslik = str_replace(":","_",$baslik);
$baslik = str_replace("ä","a",$baslik);
$baslik = str_replace("ö","o",$baslik);
$baslik = str_replace("ü","u",$baslik);
$baslik = str_replace("ş","s",$baslik);
$baslik = str_replace("ç","c",$baslik);
$baslik = str_replace("ı","i",$baslik);
$baslik = str_replace("ğ","g",$baslik);
$baslik = str_replace("Ö","o",$baslik);
$baslik = str_replace("Ü","u",$baslik);
$baslik = str_replace("Ş","s",$baslik);
$baslik = str_replace("Ç","c",$baslik);
$baslik = str_replace("İ","i",$baslik);
$baslik = str_replace("Ğ","g",$baslik);
$baslik = strtolower($baslik);
$seourl = $siteurl."/oyun/".$id."/".$baslik.".html";
return $seourl;
}
PHP:
//Kategorilerimi sıralıyayım
$ksorgu = mysql_query("SELECT kid, title FROM kategori WHERE status = '1'");
while ($ksonuc = mysql_fetch_array($ksorgu)) {
$kid = $ksonuc['id'];
$kadi = $ksonuc['title'];
echo "\n<url>\n<loc>".katurl($kid, $kadi)."</loc>\n<changefreq>always</changefreq>\n<priority>1.0</priority>\n</url>";
}
soru ve takıldıgınız yerleri konu altından sürekli cevaplayabilirim.