Dinamik php sitemap konusunda sizlere yardımcı olacağız, burada yer alan bilgi basit çaplı bloglar ya da internet siteleri için işinizi görecektir. İnternet sitenizin tamamında bir sitemap oluşturmayacak. Sadece ilgili tabloda ki verilerin çıktısını alacaktır.
Gerekli php kodları aşağıda açıklama kısımlarını düzenleyip kendinize göre uyarlayınız.
<?php
//sitemap.php
$connect = mysqli_connect(“localhost”, “DB Kullanıcı Adı“, “DB Kullanıcı Şifresi“, “DB Adı“);$query = “Bu alana sqlden çağıracağınız tablonun adını ekleyiniz“;
//SELECT * FROM `tablo_adi` ORDER BY `id_gore_gel` DESC Bu alanda dikkat etmeniz gereken en son eklenen verileri en başta çağırmanız gerekiyor. Ben id göre sıraladığımdan en son eklenen içeriğin idsine göre çağırıyorum. ID büyüdükçe güncel içeriği sitemap içine ekliyorum. Siz bunu kendinize göre düzenlersiniz yine tarihe göre ekleyebilirsiniz. Bu tamamen sizin sql de nasıl çalışma yaptığınıza bağlı yada sqlin nasıl oluşturulduğuna bağlı. (Bu alanı bir üst satırdaki ” Bu alana sqlden çağıracağınız tablonun adını ekleyiniz ” alanına göre düzenlemeniz gerekiyor.)
$result = mysqli_query($connect, $query);
$base_url = “Sitenizin url linkini ekleyiniz“;
header(“Content-Type: application/xml; charset=utf-8”);
echo ”.PHP_EOL;
echo ” . PHP_EOL;
while($row = mysqli_fetch_array($result))
{
echo ” . PHP_EOL;
echo ”.$base_url. $row[“news_slug”] .” . PHP_EOL;
echo ‘daily’ . PHP_EOL;
echo ” . PHP_EOL;
}echo ” . PHP_EOL;
//www.kastamonutasarim.com
?>
Bu kodu .htaccess içine eklediğinizde sitemapınızı sitemap.php yerine sitemap.xml olarak çalıştırmanıza olanak tanır.
RewriteEngine On # Bu kod sitemapın sitemap.xml olarak gelmesini sağlar.
RewriteRule ^sitemap.xml/?$ sitemap.php
Bu işlemleri tamamladıktan sonra Google Search Console’a girdiğinizde ‘Site Haritası Ekleme/Test Etme’ alanından sitemap.xml olarak ekleme yaparak sitenizdeki içerikleri Google’a göndermeye başlayacaksınız.