12 Şubat 2014, Çarşamba

https://www.example.com/category.php?category=gummy-candies&price=5-10&price=over-10 gibi birçok URL kombinasyonuna neden olabilir.Renk veya fiyat aralığına göre filtreleme gibi fasetli navigasyon, ziyaretçileriniz için yararlı olabilir; ancak yinelenen içerik içeren birçok URL kombinasyonu oluşturduğundan genellikle arama dostu değildir. Yinelenen URL’ler nedeniyle arama motorları yeni veya güncellenmiş benzersiz içeriği yeterince hızlı tarayamayabilir ve/veya indeksleme sinyalleri kopya sürümler arasında bölündüğü için bir sayfayı doğru şekilde indeksleyemeyebilir. Bu sorunları azaltmak ve fasetli navigasyon sitelerinin mümkün olduğunca arama dostu olmasına yardımcı olmak için şunları yapmak istiyoruz:
- Fasetli navigasyonun arka planını ve potansiyel sorunlarını açıklamak
- En kötü uygulamaları vurgulamak
En iyi uygulamaları paylaşmak
Arka Plan
İdeal bir durumda, benzersiz içerik (ister tek bir ürün/makale ister ürün/makale kategorisi olsun) yalnızca bir erişilebilir URL’ye sahip olmalıdır. Bu URL, ana sayfadan veya bir kategori sayfasından tıklanarak erişilebilen, site içinde içeriğe giden net bir tıklama yoluna veya rotaya sahip olmalıdır.
Arayanlar ve Google Arama için İdeal Olan
Tüm bireysel ürün/makale sayfalarına ulaşan net bir yol

Kategori sayfası için bir temsilci URL
https://www.example.com/category.php?category=gummy-candies
Bireysel ürün sayfası için bir temsilci URL
https://www.example.com/product.php?item=swedish-fish
Fasetli navigasyonun neden olduğu istenmeyen yineleme
Aynı makale/ürün için çok sayıda URL
Canonical:
example.com/product.php?item=swedish-fish
Kopya:
example.com/product.php?item=swedish-fish&category=gummy-candies&price=5-10
Aynı ürün sayfası birden fazla URL’de bulunabilir.
Arayanlar ve arama motorları için çok az değer sağlayan veya hiç değer sağlamayan çok sayıda kategori sayfası (aşağıdaki tabloda gösterildiği gibi):
URL example.com/category.php?category=gummy-candies&taste=sour&price=5-10example.com/category.php?category=gummy-candies&taste=sour&price=over-10

Sorunlar - Kullanıcılar nadiren “ekşi jelibon şekerleme fiyatı beş ila on dolar” araması yaptığından, Google kullanıcıları için ek bir değer sağlamaz.
- Üst kategori sayfalarından (“jelibon şekerlemeler” veya “ekşi jelibon şekerlemeler”) aynı öğeyi (“meyve salatası”) keşfeden arama motoru tarayıcıları için ek bir değer sağlamaz.
- İndeksleme sinyalleri aynı kategorinin çok sayıda sürümü arasında bölündüğü için site sahibi için negatif değer oluşturur.
- Bant genişliği kullanımı ve yeni veya güncellenmiş sayfalar yerine yinelenen içeriklere harcanan tarama kapasitesi nedeniyle site sahibi için negatif değer oluşturur.
- Arama motorları için değer sağlamaz (404 yanıt kodu döndürmelidir).
- Arayanlar için negatif değer oluşturur.
Fasetli navigasyon için en kötü (arama dostu olmayan) uygulamalar
En kötü uygulama #1: key=value& çiftleri yerine virgül veya köşeli parantez gibi standart olmayan URL kodlaması kullanmak.
En kötü uygulamalar:
=yerine:ile işaretlenmiş anahtar-değer çiftleri.&yerine[ ]ile eklenmiş çoklu parametreler.
=yerine,ile işaretlenmiş anahtar-değer çiftleri.&yerine,,ile eklenmiş çoklu parametreler.
En iyi uygulama:
İnsanlar ,, gibi tuhaf URL parametrelerini çözebilse de, tarayıcılar standart olmayan bir şekilde uygulandıklarında URL parametrelerini yorumlamakta zorlanırlar. Google Tarama Ekibi’nden yazılım mühendisi Mehmet Aktuna, “Standart olmayan kodlama kullanmak, davetiye çıkarmaktır” diyor. Bunun yerine, anahtar-değer çiftlerini eşittir işaretiyle (=) bağlayın ve birden fazla parametreyi ve işaretiyle (&) ekleyin.
En kötü uygulama #2: Sayfa içeriğini değiştirmeyen değerleri listelemek için parametreler yerine dizinler veya dosya yolları kullanmak.
En kötü uygulama:
/c123/ bir kategori, /s789/ ise sayfa içeriğini değiştirmeyen bir oturum kimliği (session ID) olduğunda:
İyi uygulama:
Dizin, /gummy-candy/, sayfa içeriğini anlamlı bir şekilde değiştirir:
En iyi uygulama:
URL parametreleri, arama motorlarının verimli bir şekilde nasıl tarama yapacaklarını belirlemeleri için daha fazla esneklik sağlar.
Arama motoru tarayıcıları gibi otomatik programların, değerler doğrudan yola yerleştirildiğinde yararlı değerleri (örneğin, gummy-candy) yararsız olanlardan (örneğin, sessionID) ayırt etmesi zordur. Öte yandan, URL parametreleri, arama motorlarının belirli bir değerin tarayıcının tüm varyasyonlara erişmesini gerektirmediğini hızlıca test etmesi ve belirlemesi için esneklik sağlar.
Sayfa içeriğini değiştirmeyen ve URL parametresi olarak listelenmesi gereken yaygın değerler şunlardır:
- Oturum Kimlikleri (Session IDs)
- İzleme Kimlikleri (Tracking IDs)
- Yönlendiren Kimlikleri (Referrer IDs)
- Zaman damgası
En kötü uygulama #3: Kullanıcı tarafından oluşturulan değerleri, taranabilir ve indekslenebilir ancak arama sonuçlarında yararlı olmayan (muhtemelen sonsuz) URL parametrelerine dönüştürmek.
En kötü uygulamalar:
Örneğin, taranabilir ve indekslenebilir URL’ler olarak boylam/enlem veya “gün önce” gibi kullanıcı tarafından oluşturulan değerler:
En iyi uygulamalar:
Kullanıcı tarafından oluşturulan değerlerin taranabilir URL’ler oluşturmasına izin vermek yerine (bu, arayanlar için çok az değeri olan sonsuz olasılıklara yol açar), belki en popüler değerler için kategori sayfaları yayınlayın ve ardından sayfanın sıradan bir arama sonuçları sayfasından daha fazla değer sağlaması için ek bilgiler ekleyin. Alternatif olarak, kullanıcı tarafından oluşturulan değerleri ayrı bir dizine yerleştirmeyi ve ardından robots.txt ile bu dizinin taranmasını engellemeyi düşünün.
robots.txt ile:
En kötü uygulama #4: URL parametrelerini mantık olmadan eklemek.
En kötü uygulamalar:
Daha iyi uygulama:
En iyi uygulama:
Gereksiz URL parametreleri yalnızca yinelemeyi artırır, bu da daha az verimli tarama ve indekslemeye neden olur. Bu nedenle, gereksiz URL parametrelerini temizlemeyi ve URL’yi oluşturmadan önce sitenizin “iç bakımını” yapmayı düşünün. Kullanıcı oturumu için birçok parametre gerekiyorsa, değerleri sürekli eklemek yerine bilgileri bir çerezde saklamayı düşünün:
En kötü uygulama #5: Sıfır sonuç olduğunda daha fazla iyileştirme (filtreleme) sunmak.
En kötü uygulama:
İyileştirme için hiçbir öğe bulunmadığında kullanıcıların filtre seçmesine izin vermek.

En iyi uygulama:
Yalnızca geçerli bir kullanıcı seçimi olduğunda (öğeler mevcut olduğunda) bağlantılar/URL’ler oluşturun. Sıfır öğe olduğunda filtreleme seçeneklerini grileştirin. Kullanılabilirliği daha da artırmak için her filtrenin yanına öğe sayıları eklemeyi düşünün.

Yalnızca ürünler mevcut olduğunda URL oluşturarak yararsız URL’leri önleyin ve tarama alanını en aza indirin. Bu, kullanıcıların sitenizde kalmasına yardımcı olur (hiç ürün olmadığında geri düğmesine daha az tıklama) ve tarayıcılar tarafından bilinen potansiyel URL’leri en aza indirmeye yardımcı olur. Ayrıca, bir sayfa yalnızca geçici olarak stokta yok değilse, ancak hiçbir zaman yararlı içerik içermesi muhtemel değilse, 404 durum kodu döndürmeyi düşünün. 404 yanıtıyla, kullanıcılara daha fazla navigasyon seçeneği veya ilgili ürünleri bulmaları için bir arama kutusu içeren yararlı bir mesaj ekleyebilirsiniz.
Yeni fasetli navigasyon uygulamaları veya yeniden tasarımlar için en iyi uygulamalar
Fasetli navigasyon uygulamayı düşünen yeni siteler, benzersiz içerik sayfaları için “tarama alanını” (Googlebot tarafından bilinen sitenizdeki tüm URL’ler) optimize etmek, yinelenen sayfaların taranmasını azaltmak ve indeksleme sinyallerini birleştirmek için çeşitli seçeneklere sahiptir.
- Arama motorlarının her bir içerik sayfasını taraması için hangi URL parametrelerinin gerekli olduğunu belirleyin (örneğin, her öğeye en az bir tıklama yolu oluşturmak için hangi parametrelerin gerekli olduğunu belirleyin). Gerekli parametreler
item-id,category-id,pageve diğerlerini içerebilir. Hangi parametrelerin arayanlar ve sorguları için değerli olacağını ve hangilerinin muhtemelen yalnızca gereksiz tarama veya indeksleme ile yinelemeye neden olacağını belirleyin. Şekerleme mağazası örneğinde,
tasteURL parametresini “ekşi jelibon şekerlemeler” gibi sorgular için arayanlar açısından değerli bulabilirim; bu,example.com/category.php?category=gummy-candies&taste=soursonucunu gösterebilir. Ancak,priceparametresinin yalnızcacategory=gummy-candies&taste=sour&price=over-10gibi yinelemeye neden olacağını düşünebilirim. Diğer yaygın örnekler:- Arayanlar için değerli parametreler:
item-id,category-id,name,brandve diğerleri. - Gereksiz parametreler:
session-id,price-rangevb.
- Arayanlar için değerli parametreler:
Gereksiz parametreler içeren URL’ler için birkaç yapılandırma seçeneğinden birini uygulamayı düşünün. Sadece gereksiz URL parametrelerinin, her bir ürüne ulaşmak için bir tarayıcı veya kullanıcının tıklama yolunda asla gerekli olmadığından emin olun!
Seçenek 1:
rel="nofollow"dahili bağlantılarTüm gereksiz URL bağlantılarını
rel="nofollow"yapın. Bu seçenek, tarayıcının gereksiz URL’leri keşfetmesini en aza indirir ve bu nedenle fasetli navigasyonla oluşabilecek potansiyel olarak patlayıcı tarama alanını (tarayıcı tarafından bilinen URL’ler) azaltır.rel="nofollow", gereksiz URL’lerin taranmasını engellemez (yalnızca robots.txtdisallowtaramayı engeller). Ancak, taranmalarına izin vererek, gereksiz URL’den bir üst küme URL’sinerel="canonical"ekleyerek indeksleme sinyallerini arayanlar için değerli bir URL ile birleştirebilirsiniz (örneğin,example.com/category.php?category=gummy-candies&taste=sour&price=5-10,example.com/category.php?category=gummy-candies&taste=sour&page=alladresindeki üst küme “ekşi jelibon şekerlemeler” tümünü görüntüle sayfasına birrel="canonical"belirtebilir).Seçenek 2: Robots.txt
disallowGereksiz parametrelere sahip URL’ler için, robots.txt ile engellenecek bir
/filtering/dizini ekleyin. Bu, tüm arama motorlarının iyi içeriği taramasını sağlar, ancak istenmeyen URL’lerin taranmasını önler. Örneğin, değerli parametrelerim öğe, kategori ve tat ise ve gereksiz parametrelerim oturum kimliği ve fiyat ise. Şu URL’ye sahip olabilirim:bu, tat gibi başka bir değerli parametre URL’sine bağlanabilir:
Ancak fiyat gibi gereksiz parametreler için URL, önceden tanımlanmış bir dizin olan
/filtering/içerir:bu da robots.txt ile engellenir:
Seçenek 3: Ayrı ana bilgisayarlar (hosts)
CDN kullanmıyorsanız (CDN kullanan siteler bu esnekliğe Web Yöneticisi Araçları’nda kolayca sahip değildir), gereksiz parametrelere sahip tüm URL’leri ayrı bir ana bilgisayara yerleştirmeyi düşünün; örneğin, ana bilgisayar
www.example.comve ikincil ana bilgisayarwww2.example.comoluşturun. İkincil ana bilgisayarda (www2), Web Yöneticisi Araçları’ndaki Tarama hızı ayarını “düşük” olarak ayarlarken, ana bilgisayarın tarama hızını mümkün olduğunca yüksek tutun. Bu, ana bilgisayar URL’lerinin daha tam taranmasını sağlar ve Googlebot’un gereksiz URL’lerinize odaklanmasını azaltır.- Ana bilgisayardaki tüm öğelere en az bir tıklama yolu kaldığından emin olun.
- İndeksleme sinyallerini birleştirmek istiyorsanız, ikincil ana bilgisayardan ana bilgisayardaki bir üst küme URL’sine
rel="canonical"eklemeyi düşünün (örneğin,www2.example.com/category.php?category=gummy-candies&taste=sour&price=5-10,www.example.com/category.php?category=gummy-candies&taste=sour&page=alladresindeki üst küme “ekşi jelibon şekerlemeler” tümünü görüntüle sayfasına birrel="canonical"belirtebilir).
- Kategori veya filtre için ürün olmadığında tıklanabilir bağlantıları önleyin.
URL parametrelerinin görüntülenmesine mantık ekleyin.
Değerleri sürekli eklemek yerine gereksiz parametreleri kaldırın. Şunlardan kaçının:
Arayanlar için değerli parametreleri ilk sıraya (URL arama sonuçlarında görünebileceğinden) ve arayanlar için alakasız parametreleri (örneğin, oturum kimliği) son sıraya koyarak tutarlı bir parametre sırası tutarak arayan deneyimine yardımcı olun. Şunlardan kaçının:
- Bir sayfanın tercih edilen sürümüne
rel="canonical"ile bireysel içerik sayfalarının indekslenmesini iyileştirin.rel="canonical"ana bilgisayar adları veya alan adları arasında kullanılabilir. Sayfalandırılmış içeriğin (örneğin, “jelibon şekerlemeler” kategorisinin
page=1vepage=2sayfaları) indekslenmesini şu yollarla iyileştirin:- Serideki bireysel bileşen sayfalarından kategorinin “tümünü görüntüle” sayfasına
rel="canonical"ekleyerek (örneğin,category=gummy-candies&page=alladresinerel="canonical"ile “jelibon şekerlemeler”inpage=1,page=2vepage=3sayfaları) ve bunun hala iyi bir arayan deneyimi olduğundan emin olarak (örneğin, sayfa hızlı yüklenir). - Bileşen sayfalarından/URL’lerinden indeksleme özelliklerini (bağlantılar gibi) bir bütün olarak seriye birleştirmek için
rel="next"verel="prev"ile sayfalandırma işaretlemesi kullanarak.
- Serideki bireysel bileşen sayfalarından kategorinin “tümünü görüntüle” sayfasına
- JavaScript kullanarak URL’yi güncellemeden içeriği dinamik olarak sıralamak/filtrelemek/gizlemek için, sitenizde arayanların değerli bulacağı, taranabilen ve indekslenebilen ana kategori ve ürün sayfaları gibi URL’lerin hala mevcut olduğundan emin olun. Örneğin, tüm siteniz için yalnızca ana sayfayı (veya bir URL’yi) kullanarak JavaScript ile kullanıcı navigasyonuyla içeriği dinamik olarak değiştirmekten kaçının; bu, ne yazık ki arayanlara tüm içeriğinize ulaşmaları için yalnızca bir URL sağlar. Ayrıca, dinamik filtreleme ile performansın olumsuz etkilenmediğini kontrol edin, çünkü bu kullanıcı deneyimini zayıflatabilir.
- Site haritalarına yalnızca canonical URL’leri dahil edin.
Fasetli navigasyona sahip mevcut siteler için en iyi uygulamalar
Öncelikle, yukarıda listelenen en iyi uygulamaların (örneğin, gereksiz URL’ler için rel="nofollow") daha büyük bir yeniden tasarım uygulayabildiğinizde/uyguladığınızda hala geçerli olduğunu bilin. Aksi takdirde, mevcut fasetli navigasyon ile, arama motorları tarafından zaten büyük bir tarama alanının keşfedilmiş olması muhtemeldir. Bu nedenle, Googlebot tarafından taranan gereksiz sayfaların daha fazla büyümesini azaltmaya ve indeksleme sinyallerini birleştirmeye odaklanın.
- Mümkün olduğunda standart kodlama ve anahtar-değer çiftleri ile parametreler kullanın.
- Sayfa içeriğini değiştirmeyen oturum kimlikleri gibi değerlerin dizin olarak değil, standart anahtar-değer çiftleri olarak uygulandığını doğrulayın.
- Kategori/filtre için ürün olmadığında tıklanabilir çapalar (anchors) önleyin. Filtre için öğe olmadığında tıklamalara veya URL’lerin oluşturulmasına izin vermeyin.
URL parametrelerinin görüntülenmesine mantık ekleyin. Değerleri sürekli eklemek yerine gereksiz parametreleri kaldırın. Örneğin, şunlardan kaçının:
Arayanlar için değerli parametreleri ilk sıraya (URL arama sonuçlarında görünebileceğinden) ve arayanlar için alakasız parametreleri son sıraya koyarak tutarlı bir parametre sırası tutarak arayan deneyimine yardımcı olun. Örneğin, şunlardan kaçının:
şunun yerine:
Sitenizdeki URL parametresi davranışı hakkında güçlü bir anlayışınız varsa Web Yöneticisi Araçları URL Parametreleri‘ni yapılandırın (her bir öğeye/makaleye hala net bir tıklama yolu olduğundan emin olun). Örneğin, Web Yöneticisi Araçları’ndaki URL Parametreleri ile parametre adını, parametrenin sayfa içeriği üzerindeki etkisini ve Googlebot’un parametreyi içeren URL’leri nasıl taramasını istediğinizi listeleyebilirsiniz. Aşağıdaki tablo, farklı ayarların parametreleri nasıl etkilediğini göstermektedir:
Parametre adı İçerik üzerindeki etkisi? Googlebot neyi taramalı? trackingIdYok Bir temsilci URL SortOrderSıralar Yalnızca değeri ‘LowToHigh’ olan URL’ler SortBySıralar Yalnızca değeri ‘Price’ olan URL’ler FilterByColorDaraltır URL yok itemIdBelirtir Her URL pageSayfalandırır Her URL - JavaScript kullanarak URL’yi güncellemeden içeriği dinamik olarak sıralamak, filtrelemek ve gizlemek için, sitenizde arayanların değerli bulacağı, taranabilen ve indekslenebilen ana kategori ve ürün sayfaları gibi URL’lerin hala mevcut olduğundan emin olun. Örneğin, tüm siteniz için yalnızca ana sayfayı (veya bir URL’yi) kullanarak JavaScript ile kullanıcı navigasyonuyla içeriği dinamik olarak değiştirmekten kaçının; bu, ne yazık ki arayanlara tüm içeriğinize ulaşmaları için yalnızca bir URL sağlar. Ayrıca, dinamik filtreleme ile performansın olumsuz etkilenmediğini kontrol edin, çünkü bu kullanıcı deneyimini zayıflatabilir.
- Bir sayfanın tercih edilen sürümüne
rel="canonical"ile bireysel içerik sayfalarının indekslenmesini iyileştirin.rel="canonical"ana bilgisayar adları veya alan adları arasında kullanılabilir. Sayfalandırılmış içeriğin (örneğin, “jelibon şekerlemeler” kategorisinin
page=1vepage=2sayfaları) indekslenmesini şu yollarla iyileştirin:- Serideki bireysel bileşen sayfalarından kategorinin “tümünü görüntüle” sayfasına
rel="canonical"ekleyerek (örneğin,category=gummy-candies&page=alladresinerel="canonical"ile “jelibon şekerlemeler”inpage=1,page=2vepage=3sayfaları) ve bunun hala iyi bir arayan deneyimi olduğundan emin olarak (örneğin, sayfa hızlı yüklenir). - Bileşen sayfalarından/URL’lerinden indeksleme özelliklerini (bağlantılar gibi) bir bütün olarak seriye birleştirmek için
rel="next"verel="prev"ile sayfalandırma işaretlemesi kullanarak.
- Serideki bireysel bileşen sayfalarından kategorinin “tümünü görüntüle” sayfasına
- Site haritalarına yalnızca canonical URL’leri dahil edin.
Genellikle, ne kadar basit tutarsanız o kadar iyi olduğunu unutmayın. Sorularınız mı var? Lütfen Web Yöneticisi tartışma forumumuzda sorun.
Biz bunu nasıl uyguluyoruz
Google announcements age. We keep this post here for the record, and we note for clients whether the behaviour it describes still applies today or has since been superseded.
İlgili hizmetler