Site Haritası (Sitemap)
Herkese merhaba.
Bir kütüphaneye adım attığınızı düşünün. Kütüphaneci, size tüm kitapların bir listesini sunuyor. Bu liste, kitapların tam olarak nerede olduğunu göstermese de, kütüphanede hangi kitapların yer aldığını ve bu kitapların önem düzeylerini, rafların ne sıklıkla güncellediklerini anlatır.
Web siteleri de aynı şekilde, arama motorlarına tüm sayfalarının bir listesini sunar. Bu liste, arama motorlarına akışta hangi sayfaların mevcut olduğunu gösterir ve akışı daha iyi anlamasına yardımcı olur. İşte bu dijital listeye “site haritası” denir.
Bugün, rehber niteliği taşıyan ve crawl ve index süreçlerini optimize eden site haritasının nasıl oluşturulacağına, Google’a nasıl gönderileceğini ve bu süreçte dikkat edilmesi gereken noktaların tümüne değineceğim.
Hazırsanız başlayalım.
Sitemap (Site Haritası) Nedir?
Arama motoru botlarının hedef sayfalarımızı değerlemesi için öncelikle bu sayfalara ulaşabilmesi, daha sonrasında sorunsuz bir şekilde crawl edebilmesi ve son aşamada indeksleyerek dizine eklenmesi gerekir. Bu akıştan da görebileceğimiz üzere organik performansımızı artırma sürecinin ilk adımı, internet sitemizdeki sayfaların ulaşılabilir olmasıdır.
Google Search Central’da site haritasıyla ilgili yer alan rehberi incelediğimizde, eğer bir internet sitesinin bilgi mimarisinde herhangi bir sorun bulunmuyor yani tüm sayfalar akış içerisinde yer alıyorsa, Google’ın çoğu zaman bu sayfaları keşfetmekte herhangi bir sorun yaşamadığının altını çizmeliyiz.
Binlerce sayfaya sahip büyük ölçekli internet sitelerinde tüm sayfaların maksimum tarama derinliğinde akış içerisine dahil edilmesi hiç şüphesiz imkansızdır ve tam bu noktada arama motoru botları için yönerge niteliği taşıyan sitemap (site haritası) devreye girer.
Sayfa sayısı ne olursa olsun istisnasız tüm internet sitelerinin kullanabileceği bir yapı olan site haritası ile arama motoru botlarının yalnızca yüzeydeki değil derinlerdeki sayfalarımıza da ulaşmasını sağlayabilir ve tüm crawl sürecini destekleyerek crawl budget ve crawl depth optimizasyonuna uygun zemini hazırlayabiliriz.
Burada googlebot’un crawling deneyiminden bahsederken site mimarisine bir parantez açmak gerekir. Botların akışı anlamlandırması, ilişkiselliği çözmesi ve tüm web sayfalarını keşfetmesi hedefine yalnızca doğru mimari ile gidebiliriz. Bu nedenle özellikle geniş kapsamlı web sitelerinde kategorizasyon, kullanıcının ihtiyaç duyduğu landing page’ler ve statik alanlar beklentiyi karşılayacak şekilde kurgulanmalıdır.
Bu geniş ve detaylı tanımdan sonra site haritasının öneminden, hangi durumlarda mutlaka kullanılması gerektiğinden ve ideal yapıdan bahsederek devam edelim.
Site Haritası Neden Önemlidir?
Sitemap’in tanımını yaparken ve devamında site haritasının neden önemli olduğuna değindim fakat net olması açısından maddeler halinde burada da özetlemek istiyorum;
- Arama motorlarına akıştaki web sayfalarının bir listesini sunar ve bu da Googlebot’un web sitemizi daha verimli bir şekilde keşfetmesini ve taramasını sağlar.
- Yeni eklenen web sayfalarının daha hızlı keşfedilmesini ve dizine eklenmesini sağlar. Böylelikle yeni bir sayfa ile hedeflenen organik trafiğe daha hızlı ulaşmak mümkündür.
- Binlerce sayfa barındıran büyük web sitelerinde tüm sayfaları akışta doğru konumlandırmak mümkün değildir. Sitemap, derinlerde kalan web sayfalarını Googlebot’a ulaştırırken ideal yollardan biridir.
- Web’deki farklı kaynaklardan sinyal almayan ve düşük keşfedilebilirliğe sahip yeni web sitelerinde Googlebot’un akışı anlamlandırma sürecini hızlandırır ve crawl budget gelişimini destekler.
- Videolar, görseller ya da farklı dillerdeki web sayfalarının crawling ve indexing süreçlerini iyileştirir.
Site Haritasını Hangi Durumlarda Kullanmalıyız?
Site haritasının crawl süreci üzerindeki hızlandırıcı etkisi çok net. Peki bu yönergeyi hangi durumlarda mutlaka kullanmalı ve maksimum fayda hedeflemeliyiz?
- Büyük bir web sitesine sahipsek Googlebot’un tüm sayfalarımızı keşfedebilmesi adına site haritası kullanmalıyız.
- Yeni bir web sitesi açtıysak ve Google ile henüz yeni yeni tanışıyorsak site haritası ile bu tanışma sürecini hızlandırabiliriz.
- Akışta görsel ve videoları konumlandırmak önemli ve kritik ise Google’ın anlamlandırma sürecini geliştirmek adına site haritasını kullanabiliriz.
Tabi buradan yalnızca bu kapsamdaki web siteleri site haritası kullanmalıdır sonucunu çıkartmamak gerekir. Google her ne kadar küçük kapsamlı ve iyi bir site mimarisine sahip olan web siteleri için site haritası kullanımını önermese de, tarama ve indeksleme süreçlerini iyileştirici etkisi dolayısıyla tüm web siteleri için (birkaç sayfa barındıranlar hariç elbette) kullanılması gerektiğini düşünüyorum.
Web sitemiz için site haritasını nasıl oluşturabileceğimize geçmeden önce bu yapıda kullanabileceğimiz xml tag’leri ve amaçlarını açıklamak istiyorum.
Site Haritasında Kullanabileceğimiz XML Tag’ler
Site haritası oluştururken kullanmamız gereken zorunlu xml etiketlerinin (urlset, url ve loc) yanında priority, lastmod ve changefreq etiketlerini de akış içerisine dahil edebiliriz. Birçok SEO uzmanının yakından takip ettiği ve algoritmalara ilişkin birçok detaya temas eden John Mueller’in 2017’de yaptığı açıklamada ve segmentlerini arama motoru botlarının dikkate almadığını ifade ettiğinin altını çizmeliyiz.
Yine John Mueller’in ifadesine göre; arama motoru botlarına ipucu niteliği taşıyan bu segmentler olsa da Google kendi algoritmalarını kullanıyor ve farklı URL’leri rastgele sırayla tarıyor.
Tag’lerin detaylarına bakalım;
- priority: 0.0 – 1.0 arasında değerler alabilen bu xml etiketi, ilgili URL’in diğerlerine kıyasla önemini göstermemize yardımcı olur. Bir ipucu olarak değerlendirilen bu etiketin dikkate alınmadığı Mueller 2017 yılında ilan etmişti.
- lastmod: İlgili URL’in son değiştirilme tarih ve anını belirtmek amacıyla kullanılan bu xml etiketinin site haritası içerisinde yer alması mutlaka tavsiye edilir ve arama motoru botlarının bu etiketin işlevini kavrayarak dikkate aldığı John Mueller tarafından da ifade edilmiştir.
- changefreq: Arama motoru botlarına bir URL’in ne sıklıkla değişeceğini ifade ederken kullanabileceğimiz bu etiketin bir ipucu niteliği taşıdığını unutmamalıyız. Dolayısıyla arama motoru botlarının “hourly” olarak işaretlediğimiz bir sayfayı “monthly” olarak işaretlediğimizden bir URL’den daha az taraması normal bir durumdur.
changefreq etiketinde kullanabileceğimiz değerler;
- always
- hourly
- daily
- weekly
- monthly
- yearly
- never
olarak sıralanabilir.
Peki ideal senaryoda XML site haritası nasıl olmalı?
Site Haritası Nasıl Olmalı?
Arama motoru botlarının internet sitemizi crawl sürecini kolaylaştıracak yönerge niteliği taşıyan bir site haritası oluştururken urlset, url ve loc xml etiketlerini mutlaka kullanmalıyız. Bir önceki satılarda da ifade edildiği gibi priority, changefreq ve lastmod etiketlerini SEO kurgumuz içerisinde yapıya da bağlı olarak opsiyonel bir şekilde kullanabiliriz.
<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>https://www.erentcolak.com.tr</loc> <lastmod>2020-14-11</lastmod> <changefreq>always</changefreq> <priority>1.0</priority> </url> </urlset>
Site Haritası Oluşturmak İçin Hangi Araçları Kullanabiliriz?
Eğer WordPress gibi plugin’ler ile desteklenen bir CMS kullanıyorsak, site haritası oluşturma noktasında işimiz kolay.
- Yoast SEO
- XML Sitemap Generator for Google
- Rank Math SEO
gibi plugin’lerden birini tercih ederek site haritası oluşturabilir ve özelleştirebiliriz.
WordPress’de Site Haritası Nasıl Oluşturulur? içeriğinde bu eklentilerin kullanımını adım adım anlattım. İçeriği inceleyerek birkaç kısa dakikada ihtiyacınız olan site haritasını oluşturabilirsiniz.
Bir CMS kullanmıyorsak ne yapmalıyız? Kullandığımız dile bağlı olarak bir script oluşturmalıyız. Bunun için de developer desteğine ihtiyacımız var. İşi uzmanına bırakmak en iyisi çünkü php tabanlı bir yapı ile node.js üzerinde çalışan next.js tabanlı bir yapının operasyonu farklı.
Eğer yazılımcı desteğimiz yok ve bunu AI kullanarak bir şekilde çözemiyorsak (sıfır web programlama bilgisiyle bence biraz zor) o zaman daha zahmetli fakat çalışacağından kesin emin olduğumuz çözüm olan manuel sitemap oluşturma seçeneğini gündeme alabiliriz.
Screaming Frog, kullanabileceğimiz alternatiflerden biri. Hangi sayfaların dahil edileceğini ve nasıl sıralanacağını belirleyebilir, priority ve change frequency gibi tag’leri özelleştirebiliriz. Audit alırken aynı zamanda sitemap oluşturmak avantajlı tabi.
Farklı alternatifler de kullanabiliriz. XML-Sitemaps bu ihtiyacı çok iyi karşılayan tool’lardan biri. Screaming Frog’a kıyasla daha hızlı elbette. Hedef doğrudan sitemap oluşturmak çünkü.
Hazırladığımız sitemap’i doğrudan indirebilir ya da mail olarak alabiliriz. İndirmeden önce görüntüleyerek belirli düzenlemeler yapmak da mümkün.
Ücretli ve Ücretsiz SEO Araçları içeriğimde bu tool’dan bahsediyorum. Linkini de şöyle bırakıyorum; https://www.xml-sitemaps.com
Manuel sitemap oluşturma sürecinde sorun olmasa da bunun sürekli tekrar eden bir iş olması problem. Özellikle sürekli yeni web sayfalarının geldiği ya da belirli sayfaların kapandığı ve akıştan kaldırıldığı bir web sitesinin SEO operasyonunu yürütüyorsanız.
Çok zahmetli bir hal aldığı senaryolar için eski bir teknik olan HTML sitemap’i tavsiye edebilirim. Tabi anlamlandırma konusunda epey fark var XML ile. Aynı ipuçlarını veremiyoruz fakat genel bir akış sunmak için bir sayfa oluşturup, tüm akışı bu sayfaya ekleyip bu sayfayı da Footer’dan sitemap olarak verebiliriz. Tercih ettiğim bir teknik olmasa da alternatif yollardan biri.
Manuel takip etmemiz gereken bir süreç varsa iki haftalık ya da aylık (güncelleme sıklığına bağlı) periyotlar ile sitemap’i update etmek yeterli olacaktır. Çok sık güncellenen yapılarda ne yapıp edip dinamik sitemap’e geçmenizi öneririm. Aksi halde süreç yönetimi baş ağrıtıcı bir hal alabilir.
Harika gidiyoruz. Site haritasını nasıl oluşturabileceğimizin de üzerinden geçtik. Şimdi oluşturduğumuz site haritasını Google’a nasıl göndereceğimize bakalım.
Site Haritasını Google’a Nasıl Göndereceğiz?
Manuel ya da otomasyon (tavsiye edilen) ile oluşturduğumuz site haritasını Google’a göndermek için Search Console’u kullanmamız gerekir.
Site haritamızı gönderirken;
- Google Search Console’a giriş yapmamız,
- Sol sütundaki “sitemaps – site haritaları” sekmesine geçmemiz,
- “Yeni bir site haritası ekle” bölümünden site haritası uzantımızı girerek “gönder” butonuna tıklamamız gerekir.
Search Console’da;
- Gönderilen site haritalarının ne zaman gönderildiğini,
- En son ne zaman okunduğunu,
- Google tarafından kabul durumunu ve
- Keşfedilen URL sayısını
görmemiz mümkündür. Detay analizlere bakıldığında ise taranan fakat dizine eklenmeyen URL’leri de tespit edebiliriz.
Site Haritası Kullanmak Zorunda Mıyız?
Google’ın site haritası kullanımı noktasında herhangi bir zorunluluğu yoktur. Yine site haritası, SEO korelasyonu içerisinde doğrudan etki sahibi olmamakla birlikte özellikle web sitesinin click derinliğindeki sayfaların crawl sürecini hızlandırması ve crawl budget etkisi ile dikkatten kaçmaması ve kullanılması şiddetle tavsiye edilen bir yapıdır.
Site Haritasına Eklenmemesi Gereken URL’ler Nelerdir?
Site haritasının amacı, Google’a crawl edilmesini istediğimiz web sayfalarının bir listesini ve önceliklerine yönelik ipucu vermektir. Dolayısıyla kullanıcı ve Googlebot için değer üretmeyen web sayfalarımızın site haritasında yer almasına gerek yoktur.
Bunların bir listesini verecek olursam;
- Noindex işaretlediğimiz sayfalar. (indexe girmesin diyoruz, neden sitemap ile Google’a verelim?)
- Yalnızca belirli kullanıcılara açık olan ve/veya login gerektiren sayfalar.
- Akıştan kaldırılan ve 404 yanıt kodu döndüren URL’ler.
- Redirect edilmiş URL’ler.
- Canonical’i farklı bir URL’i işaret eden sayfalar.
- Duplicate sayfalar.
Site Haritasının Maksimum Boyutu Ne Olmalıdır?
Site haritasının maksimum dosya boyutu 50 MB, içerisindeki maksimum URL sayısı ise 50.000 olmalıdır. Dosya boyutu ve/veya URL sayısının aşıldığı senaryoda yeni bir site haritası oluşturarak devam etmek gerekir. Bu durumda da birden fazla site haritasını tek bir dizin altında toplayabilirsiniz.
Örneğin;
<sitemapindex xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″>
<sitemap>
<loc>https://domain.com/sitemap/products/0.xml</loc>
<lastmod>2024-09-03</lastmod>
</sitemap>
<sitemap>
<loc>https://domain.com/sitemap/products/1.xml</loc>
<lastmod>2024-09-03</lastmod>
</sitemap>
</sitemapindex>
Site Haritasını Ne Sıklıkla Güncellemeliyiz?
Dinamik bir site haritası kullanıyorsak güncelleme konusunu dert etmemize gerek yok. Yeni bir sayfa eklediğinizde ya da bir sayfayı update ettiğinizde bu site haritasına dolayısıyla Google’a doğrudan yansıyacaktır.
Bir tool yardımıyla manuel site haritası oluşturarak ilerliyorsak web sitesinin ihtiyacına ve kapsamına bağlı bir güncelleme periyodu belirlemeliyiz.
Sürekli güncellenen bir web sitesine sahipsek haftalık periyotlarla takip etmek iyi olur. Günlük ya da birkaç günlük periyotlar gerçekçi değil maalesef operasyon yoğunluğu içerisinde.
Daha az yeni sayfanın geldiği ya da kapandığı bir yapı içinse iki haftalık ya da aylık periyotlar yeterlidir.
Özetle web sitesinin kapsamına bağlı organize etmemiz gereken bir süreç ortaya çıkar.
Site Haritasının Robots.txt İle İlişkisi Nedir?
Robots.txt, crawl’a başlamadan önce Googlebot’un ilk ziyaret ettiği alanlar ve bu alanda Sitemap kodu ile site haritasına yer vermeliyiz. Bu önemlidir çünkü site haritasının keşfedilmesini kolaylaştırır.
Diğer taraftan doğrudan Search Console aracılığıyla site haritasını Google’a göndermeyi öğrendik. Aynı amaca hizmet eden iki nokta. Ben daha net ve agresif bir yaklaşımla işi şansa bırakmayarak ikisini bir arada kullanmayı tercih ediyorum.
Console üzerinden site haritasına ilişkin aldığımız detaylardan vazgeçmek mümkün değil. Robotst’un da sıklıkla ziyaret edildiği bir alan olduğu net. Dolayısıyla iki alandan da sitemap’i serve etmek ideal duruyor.
Bir içeriğin daha sonuna geldik. Umarım amacına ulaşan ve sizler için fayda üreten bir içerik olmuştur. Geri bildirimlerinizi mutlaka bekliyorum.
Konuyla İlgili;
https://www.searchenginejournal.com/technical-seo/xml-sitemaps/
https://www.seoquake.com/blog/create-a-sitemap-by-mueller/
https://www.searchenginejournal.com/googles-john-mueller-dont-create-a-sitemap-manually/370176/