Php Pdo Dinamik Sitemap Oluşturma

Php mehmetkpln18 20 Ekim 2020

Php ile siteniz için dinamik sitemap (site haritası) nasıl oluşturulur görelim. Bu basit işlemle kolayca sizde site haritanızı oluşturabilirsiniz.

Öncelikle Sitemap Nedir ?

Kısaca sitenizde bulunan makale, resim, video gibi linklerin listelendiği, google’nin önem verdiği .xml uzantılı bir dosyadır.

Seo ( Arama Motoru Optimizasyonu ) İçin Önemi Nedir ?

Seo açısından ehemmiyeti yüksektir. Zira sitemizi indexleyecek robotlar ön bilgileri bu sayfalardan alır. Ancak bu bilgiler robotlara komut vermekten ziyade bir açıklama niteliğindedir, örneğin siz ;

<changefreq>…</changefreq>

etiketine Daily yazdığınızda robota bu sayfa günlük ziyaret edilsin çünkü her gün içerik değişiyor dersiniz ama robot bu sayfayı kendi algoritmalarına uygun sıklıkta ziyaret etmeyi tercih eder.

Öncelikle yapmamız gereken .htaccess yönlendirmemizi yaparak sitemap.php dosyamızın sitemap.xml olarak çalışması gerektiğini bildirmek;

.htaccess

RewriteRule ^sitemap.xml$ sitemap.php [NC,L]

Daha sonra;

sitemap.php

<?php
include 'config.php'; ## Veritabanı bağlantı dosyası
header("Content-Type: text/xml");
 ## Xml olarak göstermek için girilen komut
## Sitemap Bilgileri
echo '<?xml version="1.0" encoding="UTF-8"?>';
echo '
<urlset
  xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="
		http://www.sitemaps.org/schemas/sitemap/0.9
		http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
';
## Site Menüleri 
## Menüler
echo '
	<url>
       <loc>https://www.mehmetkaplan.net/</loc>
       <lastmod>'.date("Y").'-'.date("m").'-'.date("d").'T'.date("H:i:s").'+00:00</lastmod>
       <changefreq>daily</changefreq>
       <priority>0.5000</priority>
	</url>
	  <url>
       <loc>https://www.mehmetkaplan.com/hakkimda</loc>
       <lastmod>'.date("Y").'-'.date("m").'-'.date("d").'T'.date("H:i:s").'+00:00</lastmod>
       <changefreq>daily</changefreq>
       <priority>0.8000</priority>
  </url>
  <url>
       <loc>https://www.mehmetkaplan.com/projelerim</loc>
       <lastmod>'.date("Y").'-'.date("m").'-'.date("d").'T'.date("H:i:s").'+00:00</lastmod>
       <changefreq>daily</changefreq>
       <priority>0.8000</priority>
  </url>
';
## Makaleleri Listele 
## Bu alanda ise PDO ile verilerimizi veri tabanından çekiyoruz Bu alanda değişeceksiniz.
## yazi_id yazan yere ise çekeceğiniz verilerin id sinin bulunduğu sutunun ismini giriniz.
$yazisor=$db->prepare("SELECT * FROM tablo_adi where yazi_onay=:yazi_onay ORDER BY yazi_id DESC");
$yazisor->execute(array(
  'yazi_onay' => 1
  ));
	while($yazicek=$yazisor->fetch(PDO::FETCH_ASSOC)){
## Alt kısımları sef-link yapınıza göre değiştirin.
echo'
	<url>
	   <loc>https://snrtr.com/'.$yazicek["seo"]."-".$yazicek["yazi_id"].'</loc> 
	   <lastmod>'.date("Y").'-'.date("m").'-'.date("d").'T'.date("H:i:s").'+00:00</lastmod>
	   <changefreq>daily</changefreq>
	   <priority>0.5000</priority>
	</url>
';
}
echo '</urlset>';
?>

Bir daha ki yazımızda görüşmek üzere ;

#Php #Php Dinamik Sitemap #Php Pdo Dinamik Sitemap
Bir yorum bırak
Mail adresiniz kimseyle paylaşılmayacaktır.

  • Kategoriler