PHP ile Site Haritası Değişikliğini Arama Motorlarına Bildirmek

Eğer sitenize yeni bir içerik eklediyseniz veya mevcut bir içeriği güncellediyseniz bu değişikliklerin arama motorları tarafından farkedilmesi iki haftayı bulabilir. Ama bazı sitelerde bu değişiklikler dakikalar içinde arama motorlarına yansıyor. Bunun nedeni her değişiklik sonrası bu değişikliğin arama motorlarına ping edilmesi yani bildirilmesi. Bunu da site haritaları aracılığı ile yapıyorduk zaten. Site haritasının nasıl oluşturulacağını PHP ile Dinamik Site Haritası Oluşturma başlıklı yazımda anlatmıştım. O yüzden hemen site haritasındaki değişikliği nasıl ping edeceğimizi anlatıyorum. Bunun için cURL kullanacağız. cURL farklı türdeki sunuculara bağlanmaya ve farklı protokollerle iletişim kurmaya yarar. Bizde cURL aracılığıyla arama motorlarının ping sayfalarına bağlanacağız. Bunun için pingSE isimli bir fonksiyon oluşturuyoruz.

<?php
function pingSE($sitemap,$service)
{

    
switch ($service) {
        
case 'bing':
            
$ping = "https://www.bing.com/webmaster/ping.aspx?sitemap=" . urlencode($sitemap);
            
break;
        
case 'google':
            
$ping = "https://www.google.com/webmasters/sitemaps/ping?sitemap=" . urlencode($sitemap);
            
break;
        
default:
            
return false;
    
}

    
$curl_handle = curl_init();
    
curl_setopt($curl_handle,CURLOPT_URL,$ping);
    
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
    
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
    
$buffer = curl_exec($curl_handle);
    
curl_close($curl_handle);

    
if (empty($buffer))
    
{
        
echo "<p>$service servisine bağlanırken hata oluştu</p>";
    
}
    
else
    
{
        
echo "<p>$service servisine ping işlemi başarılı.</p>";
    
}
}
?>

Ping atmak istediğimiz yerde ise fonksiyonumuzu çağırıyoruz.

pingSE('http://mhmtyylc.com/sitemap.xml','bing');
pingSE
('http://mhmtyylc.com/sitemap.xml','google');

YORUMLAR (2)

  1. salih
    salih
    dostum bunların videolu anlatımı yok mu bana öylesi lazım
    • Mehmet YAYLACI
      Mehmet YAYLACI
      Dostum maalesef yok. Videolu anlatım yapmıyorum.

YORUM FORMU