Filtreli (faceted) gezinme URL'lerinin taranmasını yönetme

Web sitelerinde sıklıkla kullanılan bir özellik olan filtreli (faceted) gezinme, ziyaretçilerin bir sayfadaki öğelerin (ör. ürünler, makaleler veya etkinlikler) gösterilme şeklini değiştirmesine olanak tanır. Bu popüler ve faydalı bir özelliktir ancak URL parametrelerine dayalı en yaygın uygulaması, sonsuz URL alanları oluşturabilir. Bu durum da web sitesine birkaç şekilde zarar verebilir:

  • Aşırı tarama: Filtreli (faceted) gezinme için oluşturulan URL'ler yeni gibi görünür ve tarayıcılar, URL'lerin yararlı olup olmayacağını tarama yapmadan belirleyemez. Dolayısıyla tarayıcı süreçleri, URL'lerin aslında faydalı olmadığını belirlemeden önce genellikle çok sayıda filtreli (faceted) gezinme URL'sine erişmiş olur.
  • Daha yavaş keşif taramaları: Önceki noktadan yola çıktığımızda, tarama işlemi faydalı olmayan URL'lerde harcanırsa tarayıcıların yeni ve faydalı URL'ler için harcayacağı zaman azalır.

Tipik bir filtreli (faceted) gezinme URL'sindeki sorgu dizesinde, filtrelenen öğelerin özellikleriyle ilgili çeşitli parametreler bulunabilir. Örneğin:

https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny

products, color ve size URL parametrelerinden herhangi birinin değiştirilmesi, temel sayfada farklı bir öğe grubunu gösterir. Bu da genellikle çok sayıda olası filtre kombinasyonu oluşturacağı için çok sayıda olası URL ortaya çıkarır. Kaynaklarınızı harcamamak için bu URL'lerde aşağıdaki yöntemlerden birini kullanmanızı öneririz:

  • Filtreli (faceted) gezinme URL'lerinin dizine eklenmesine ihtiyacınız yoksa bu URL'lerin taranmasını engelleyin.
  • Filtreli (faceted) gezinme URL'lerinin dizine eklenmesini istiyorsanız URL'lerin aşağıdaki bölümde belirtilen en iyi uygulamalarımıza uygun olmasını sağlayın. Filtreli (faceted) URL'lerin taranmasının, bu sayfaların oluşturulması için çok sayıda URL ve işlem gerekmesi nedeniyle sitelere büyük miktarda bilgi işlem kaynağı maliyeti çıkardığını hatırlatırız.

Filtreli (faceted) gezinme URL'lerinin taranmasını önleyin

Sunucu kaynaklarını harcamak istemiyorsanız ve filtreli (faceted) gezinme URL'lerinizin Google Arama'da görünmesine gerek yoksa aşağıdaki yöntemlerden birini kullanarak bu URL'lerin taranmasını önleyebilirsiniz.

  • Filtreli (faceted) gezinme URL'lerinin taranmasını engellemek için robots.txt kullanın. Filtrelenmiş öğeler, sunucu kaynaklarını fayda sağlamadan veya çok az fayda sağlayarak tükettiğinden çoğu zaman bu öğelerin taranmasına izin vermenize gerek yoktur. Bunun yerine, filtre uygulanmamış tüm ürünleri gösteren özel bir listeleme sayfasıyla birlikte yalnızca öğe sayfalarının taranmasına izin verin.
    user-agent: Googlebot
    disallow: /*?*products=
    disallow: /*?*color=
    disallow: /*?*size=
    allow: /*?products=all$
    
  • Filtreleri belirtmek için URL parçaları kullanın. Google Arama genellikle tarama ve dizine ekleme işlemlerinde URL parçalarını desteklemez. Filtreleme mekanizmanız URL parçalarına dayanıyorsa tarama üzerinde olumlu veya olumsuz bir etkisi olmaz. Örneğin, URL parametreleri yerine URL parçaları kullanın:
    https://example.com/items.shtm#products=fish&color=radioactive_green&size=tiny

Taranacak veya taranmayacak filtreli (faceted) gezinme URL'leriyle ilgili tercihinizi belirtmenin diğer yolları da rel="canonical" link öğesini ve rel="nofollow" anchor özelliğini kullanmaktır. Ancak bu yöntemler genellikle uzun vadede daha önce bahsedilen yöntemlere kıyasla daha az etkilidir.

  • Bir filtreli (faceted) gezinme URL'sinin standart sürümünün hangi URL olduğunu belirtmek için rel="canonical" kullanmak, zaman içinde bu URL'lerin standart olmayan sürümlerinin tarama hacmini düşürebilir. Örneğin, 3 tane filtrelenmiş sayfa türünüz varsa rel="canonical" öğesini, filtrelenmemiş sürüme yönlendirebilirsiniz: https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny, <link rel="canonical" href="https://example.com/items.shtm?products=fish" > öğesini belirtir.
  • Filtrelenmiş sonuç sayfalarına yönlendiren anchor'larda rel="nofollow" özelliklerini kullanmak faydalı olabilir. Ancak belirli bir URL'ye yönlendiren her anchor'ın, etkili olması için rel="nofollow" özelliği içermesi gerektiğini hatırlatırız.

Filtreli (faceted) gezinme URL'lerinin web için en uygun durumda olmasını sağlayın

Filtreli (faceted) gezinme URL'lerinizin taranması ve dizine eklenmesi gerekiyorsa sitenizdeki çok sayıda olası URL'nin taranmasının olumsuz etkilerini en aza indirmek için aşağıdaki en iyi uygulamaları kullandığınızdan emin olun:

  1. Endüstri standardı URL parametresi ayırıcı olan "&" karakterini kullanın. Tarayıcıların virgül (,), noktalı virgül (;) ve köşeli parantez ([ ve ]) gibi karakterleri parametre ayırıcı olarak algılaması zordur (çünkü bunlar çoğu zaman ayırıcı değildir).
  2. URL yolunda filtre kodluyorsanız (ör. /products/fish/green/tiny) filtrelerin mantıksal sırasının her zaman aynı kaldığından ve yinelenen filtrelerin bulunmadığından emin olun.
  3. Bir filtre kombinasyonu sonuç döndürmediğinde HTTP 404 durum kodu döndürün. Sitenin envanterinde yeşil balık yoksa hem kullanıcılar hem de tarayıcılar, uygun HTTP durum koduyla (404) "bulunamadı" hatası almalıdır. URL'de yinelenen filtreler veya anlamsız filtre kombinasyonları ve var olmayan sayfalara ayrılmış URL'ler varsa da bu durum geçerlidir. Benzer şekilde, bir filtre kombinasyonunda sonuç yoksa genel bir "bulunamadı" hata sayfasına yönlendirmeyin. Bunun yerine, karşılaşılan URL'nin altında 404 HTTP durum koduyla birlikte "bulunamadı" hatası sunun.