Fasetli navigasyon, web sitelerinde ziyaretçilerin bir sayfadaki öğelerin (örneğin ürünler, makaleler veya etkinlikler) görüntülenme şeklini değiştirmesine olanak tanıyan yaygın bir özelliktir. Popüler ve yararlı bir özellik olsa da, URL parametrelerine dayanan en yaygın uygulaması, web sitesine birkaç yönden zarar veren sonsuz URL alanları oluşturabilir:
- Aşırı tarama: Fasetli navigasyon için oluşturulan URL’ler yeni göründüğünden ve tarayıcılar önce tarama yapmadan URL’lerin yararlı olup olmayacağını belirleyemediğinden, tarayıcılar genellikle URL’lerin aslında yararsız olduğunu belirleyene kadar çok sayıda fasetli navigasyon URL’sine erişir.
- Daha yavaş keşif taramaları: Önceki noktadan yola çıkarak, tarama süresi yararsız URL’lere harcanırsa, tarayıcıların yeni ve yararlı URL’lere ayıracak daha az zamanı kalır.
Tipik bir fasetli navigasyon URL’si, filtreledikleri öğelerin özellikleriyle ilgili sorgu dizesinde çeşitli parametreler içerebilir. Örneğin:
URL parametrelerinden herhangi birini değiştirmek ürünler, renkve
boyut temel sayfada farklı bir öğe kümesi gösterir. Bu durum genellikle çok sayıda olası filtre kombinasyonu ve dolayısıyla çok sayıda olası URL anlamına gelir. Kaynaklarınızı korumak için bu URL’leri aşağıdaki yollardan biriyle ele almanızı öneririz:
- Fasetli navigasyon URL’lerinin dizine eklenmesine gerek duymuyorsanız, bu URL’lerin taranmasını engelleyin.
- Fasetli navigasyon URL’lerinin dizine eklenmesi gerekiyorsa, URL’lerin aşağıdaki bölümde belirtilen en iyi uygulamalarımızı takip ettiğinden emin olun. Fasetli URL’leri taramanın, sayfaları oluşturmak için gereken URL ve işlem miktarı nedeniyle siteler için büyük miktarda bilgi işlem kaynağına mal olduğunu unutmayın.
Fasetli navigasyon URL’lerinin taranmasını engelleme
Sunucu kaynaklarından tasarruf etmek istiyorsanız ve fasetli navigasyon URL’lerinizin Google Arama veya diğer Google ürünlerinde görünmesine gerek yoksa, bu URL’lerin taranmasını aşağıdaki yollardan biriyle engelleyebilirsiniz.
- Kullanın robots.txt fasetli navigasyon URL’lerinin taranmasına izin vermemek için. Çoğu zaman filtrelenmiş öğelerin taranmasına izin vermek için iyi bir neden yoktur, çünkü bu hiçbir veya ihmal edilebilir bir fayda sağlamadan sunucu kaynaklarını tüketir; bunun yerine, yalnızca bireysel öğelerin sayfalarının ve filtre uygulanmamış tüm ürünleri gösteren özel bir listeleme sayfasının taranmasına izin verin.
- Filtreleri belirtmek için URL parçalarını kullanın.
Filtreleme mekanizmanız URL parçalarına dayanıyorsa, tarama üzerinde (olumlu veya olumsuz) hiçbir etkisi olmayacaktır. Örneğin, URL parametreleri yerine URL parçalarını kullanın:
Hangi fasetli navigasyon URL’lerinin taranıp taranmayacağına dair bir tercih belirtmenin diğer yolları
rel="canonical" bağlantı öğesini ve rel="nofollow" çapa özniteliğini kullanmaktır. Ancak, bu yöntemler uzun vadede genellikle yukarıda belirtilen yöntemlerden daha az etkilidir.
- Kullanma
rel="canonical"
bir fasetli navigasyon URL’sinin kanonik sürümünün hangisi olduğunu belirtmek için
zamanla bu URL’lerin kanonik olmayan sürümlerinin tarama hacmini azaltabilir. Örneğin, 3 filtrelenmiş sayfa türünüz varsa, şunu işaret etmeyi düşünün:rel="canonical"filtre uygulanmamış sürüme:
https://example.com/items.shtm?products=fish&color=radioactive_green&size=tiny
belirtir<link rel="canonical" href="https://example.com/items.shtm?products=fish" >. - Kullanma
rel="nofollow"
filtrelenmiş sonuç sayfalarına işaret eden çapalar üzerindeki öznitelikler
yararlı olabilir, ancak belirli bir URL’ye işaret eden her çapanın etkili olması içinrel="nofollow"özniteliğine sahip olması gerektiğini unutmayın.
Fasetli navigasyon URL’lerinin web için optimize edildiğinden emin olun
Fasetli navigasyon URL’lerinizin taranması ve dizine eklenmesi gerekiyorsa, sitenizdeki çok sayıda potansiyel URL’yi taramanın olumsuz etkilerini en aza indirmek için bu en iyi uygulamaları takip ettiğinizden emin olun:
- Endüstri standardı URL parametre ayırıcısı ‘
&‘. Virgül (,), noktalı virgül (;) ve köşeli parantez ([ve
]) gibi karakterlerin tarayıcılar tarafından parametre ayırıcısı olarak algılanması zordur (çünkü çoğu zaman ayırıcı değildirler). - Filtreleri URL yolunda kodluyorsanız, örneğin
/products/fish/green/tiny, filtrelerin mantıksal sırasının her zaman aynı kaldığından ve yinelenen filtrelerin bulunmadığından emin olun. - Bir filtre kombinasyonu sonuç döndürmediğinde bir HTTP
404durum kodu döndürün.
Sitenin envanterinde yeşil balık yoksa, kullanıcılar ve tarayıcılar uygun HTTP durum koduyla (404) bir “bulunamadı” hatası almalıdır. URL yinelenen filtreler veya başka şekilde anlamsız filtre kombinasyonları ve mevcut olmayan sayfalama URL’leri içeriyorsa da durum böyle olmalıdır. Benzer şekilde, bir filtre kombinasyonunun sonucu yoksa, genel bir “bulunamadı” hata sayfasına yönlendirmeyin. Bunun yerine, karşılaşıldığı URL altında404
HTTP durum kodu ile bir “bulunamadı” hatası sunun.
Biz bunu nasıl uyguluyoruz
Faceted navigation is the fastest way to generate millions of low-value URLs. On every ecommerce project we decide up front which facet combinations are indexable, and we enforce it in the template rather than with tags added later.
İlgili hizmetler