Sitemap Nedir ve Nasıl Oluşturulur ?

Site Haritası protokolü sayesinde bir web yöneticisi arama motorlarını, bir web sitesindeki taranacak URLler için bilgi verebilir. Bir site haritasının içeriği temelde bir sitedeki URLleri listeleyen bir XML dosyasıdır. Bu dosya sayesinde web yöneticileri, taranacak sayfalarının üzerinde daha fazla kontrole sahip olurlar. Arama motorlarına hangi sayfanın ne sıklıkla değiştiği, en son ne zaman güncellendiği ve sitedeki hangi sayfa diğerlerinden daha önemli, öncelikli gibi bilgileri bu dosya ile gönderebilirler. Site haritaları yapı itibariyle robots.txt URL hariç tutma protokolünün tamamlayıcısı olan bir URL dahil etme protokolüdür.

XML Etiketi Tanımları

Kullanılabilir XML etiketleri aşağıda tablodaki gibi açıklanmıştır.

Öznitelik Açıklama
<urlset> gerekli Dosyayı kapsüller ve geçerli protokol standardını referans olarak kullanır.
<url> gerekli Her bir URL girişine ilişkin ana etiket. Geri kalan etiketler, bu etiketin alt nitelikleridir.
<loc> gerekli Sayfanın URL’si. Bu URL protokolle (http gibi) başlamalı ve sunucunuz gerektiriyorsa bir eğik çizgiyle sona ermelidir. Bu değer, 2.048 karakterden az olmalıdır.
<lastmod> isteğe bağlı Dosyada yapılan son değişikliğin tarihi. Bu tarih W3C Datetime biçiminde olmalıdır. Bu biçim, isterseniz saat bölümünü çıkarmanıza ve YYYY-AA-GG biçimini kullanmanıza olanak sağlar. 

Bu etiketin, sunucunun döndürebileceği Tarihinden-Sonra-Değiştirildiyse (304) başlığından ayrı olduğunu ve arama motorlarının her iki kaynaktan alınan bilgileri farklı şekilde kullanabileceğini unutmayın.

<changefreq> isteğe bağlı Sayfanın olası değişme sıklığı. Bu değer arama motorlarına genel bir bilgi sağlar ve sayfayı tarama sıklıklarıyla tam olarak ilişkili olmayabilir. Geçerli değerler şunlardır: 

  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never

Her erişildiklerinde değişen belgeleri açıklamak için “always” (her zaman) değeri kullanılmalıdır. Arşivlenen URL’leri açıklamak için “never” (hiçbir zaman) değeri kullanılmalıdır.

Bu etiketin değerinin bir komut olarak değil, bir ipucu olarak düşünüldüğünü lütfen unutmayın. Arama motoru tarayıcıları karar verirken bu bilgileri dikkate alabilecek olsa da, “her saat” olarak işaretlenmiş sayfaları ondan daha seyrek ve “her yıl” olarak işaretlenmiş sayfaları ondan daha sık tarayabilirler. Sayfalardaki beklenmeyen değişiklikleri ele alabilmeleri için, tarayıcılar “hiçbir zaman” olarak işaretlenmiş sayfaları düzenli olarak tarayabilirler.

<priority> isteğe bağlı Sitenizdeki diğer URL’lere göre bu URL’nin önceliği. Geçerli değerler 0.0 ile 1.0 arasında değişir. Bu değerin, sayfalarınızın diğer sitelerdeki sayfalarla nasıl karşılaştırıldığı üzerinde etkisi olmaz ve yalnızca sayfalarınızdan hangilerinin sizin için en önemli sayfalar olduğunu arama motorlarının bilmelerine olanak sağlar. 

Bir sayfanın varsayılan önceliği 0,5’tir.

Bir sayfaya atadığınız önceliğin, bir arama motorunun sonuç sayfalarında URL’lerinizin konumunu etkilemesi olasılığının çok düşük olduğunu lütfen unutmayın. Arama motorları aynı sitedeki URL’ler arasında seçim yaparken bu bilgileri kullanabileceğinden, en önemli sayfalarınızın bir arama dizininde bulunması olasılığını artırmak için bu etiketi kullanabilirsiniz.

Ayrıca, sitenizdeki tüm URL’lere yüksek öncelik atamanın istenir bir u olmadığını da lütfen unutmayın. Öncelik görece bir kavram olduğundan, yalnızca sitenizdeki URL’ler arasından seçim yapmak için kullanılır.

XML Site Haritası Formatı

Örnek bir site haritası dosyası şu yapıdadır :

     http://www.google.com.tr/
2007-10-10
daily
0.9
http://www.google.com.tr/sitemap.xml
2007-10-10
monthly
0.5

Birden Fazla Site Haritası Dosyasını Gruplandırma (Site Haritası Dizini Dosyaları)

Birden fazla site haritası dosyası sağlayabilirsiniz, ancak sağladığınız her bir site haritası dosyası en fazla 50.000 URL içermelidir ve 10MB’den (10.485.760) büyük olmamalıdır. İsterseniz, 10MB içinde kalmasını sağlamak ve bant genişliği gereksiniminizi azaltmak için site haritası dosyalarınızı gzip kullanarak sıkıştırabilirsiniz. 50.000’den fazla URL listelemek isterseniz, birden fazla site haritası dosyası oluşturmanız gerekir.

Birden fazla site haritası sağlarsanız, her bir site haritası dosyasını bir site haritası dizini dosyasında listelemelisiniz. Site haritası dizini dosyalarında 50.000’den fazla URL listelenemez ve 10MB’den (10.485.760 bayt) büyük olmamalıdır. Bir site haritası dizini dosyasının XML biçimi, bir site haritası dosyasının XML biçimine çok benzer.

Site Haritası dizin dosyası aşağıdaki özellikleri taşımalıdır:

  • Bir açılış <sitemapindex> etiketiyle başlayın ve bir kapanış </sitemapindex> etiketiyle bitirin.
  • Her Site Haritası için, ana XML etiketi olarak bir <sitemap> girişi ekleyin.
  • Her bir <sitemap> ana etiketi için bir <loc> alt öğe girişi ekleyin.

İsteğe bağlı <lastmod> etiketi Site Haritası dizin dosyaları için de kullanılabilir.

Not: Bir site haritası dizini dosyası, yalnızca site haritası dizini dosyasıyla aynı sitede bulunan site haritalarını belirtebilir. Örneğin, http://www.ugurozer.com/sitemap_index.xml, http://www.ugurozer.com’daki site haritalarını içerebilir, ancak http://www.konuoku.com veya http://subdomain.ugurozer.com’dakileri içeremez. Site haritalarında olduğu gibi, site haritası dizini dosyanız UTF-8 olarak kodlanmış olmalıdır.

Örnek XML Site Haritası Dizini

Aşağıdaki örnekte, iki site haritasının listelendiği bir site haritası dizini gösterilmektedir:

< ?xml version="1.0" encoding="UTF-8"?>
http://www.orneksite.com/sitemap1.xml.gz
2004-10-01T18:23:17+00:00
http://www.orneksite.com/sitemap2.xml.gz
2005-01-01

Not: XML dosyalarınızdaki tüm değerler gibi, site haritası URL’leri değerleri entity-escaped olmalıdır.

Site Haritası Dizini XML Etiketi Tanımları

Öznitelik Açıklama
<sitemapindex> gerekli Dosyadaki tüm site haritaları ile ilgili bilgileri kapsüller.
<siteharitası> gerekli Tek bir site haritası ile ilgili bilgileri kapsüller.
<loc> gerekli Site haritasının yerini tanıtır. Bu yer bir site haritası, bir Atom dosyası, RSS dosyası veya basit bir metin dosyası olabilir.
<lastmod> isteğe bağlı İlgili site haritası dosyasının değiştirildiği saati tanımlar. Site haritasında listelenen sayfalardan herhangi birinin değiştirildiği saate karşılık gelmez. lastmod etiketinin değeri W3C Datetime biçiminde olmalıdır. 

Son değiştirme zaman damgasını sağlayarak, arama motoru tarayıcılarının dizindeki Site Haritalarının yalnızca bir alt kümesini almasını sağlarsınız; yani, tarayıcı belirli bir tarihten bu yana değiştirilen site haritalarını alabilir. Bu artımlı Site Haritası alma düzeneği, çok büyük sitelerde yeni URL’lerin hızlı bir şekilde keşfedilmesine olanak sağlar.

Site Haritası Dosyası Oluşturma

Bir site haritası dosyasını manuel oluşturabileceğiniz gibi, kurallarını belirtip bir döngü içerisinde veritabanızdan çekerek bunu belirli zaman aralıklarında çalıştırarak oluşturabilirsiniz. Bu detaylara girmeden sizlere sitemap oluşturabileceğiniz online araşlar, hazır cms sistemleriniz için plug-in ve bazı masaüstü programlarını bir liste olarak paylaşacağım.

Server Taraflı Programlar

CMS ve Eklentiler

Masaüstü Programları

Online Servisler

Kaynakça:

  • Wikipedia.org
  • Sitemaps.org
  • W3.org
  • code.google.com