Site İçi Arama Önerileri: Zengin Panel mi, Düz Liste mi?
Arama kutusuna iki harf yazıldığı anda açılan panelde ürün görselleri, kategori kısayolları ve geçmiş aramalar sıralanır. Bu panel kimi vitrinlerde gerçekten iş görür, çoğu sitede ise kullanıcıyı yazmaya devam etmekten alıkoymaktan başka bir işe yaramaz. Farkı yaratan şey panelin ne gösterdiği değil, ne kadar hızlı geldiği ve her tuş vuruşunda aynı yerde durup durmadığı.
Aynı kutuda iki ayrı iş
Otomatik tamamlama ile zenginleştirilmiş öneri, göz için tek bir açılır panel olsa da iki farklı işi yapar. Otomatik tamamlama kullanıcının yazdığı sorguyu tamamlar: yazmaya devam etmesini kolaylaştırır, hedefi hâlâ arama sonuç sayfasıdır. Zenginleştirilmiş öneri ise sorguyu atlatır, kullanıcıyı doğrudan bir ürüne ya da kategoriye ışınlamaya çalışır.
Bu ayrımı görmeden panel tasarlanınca ortaya çıkan sonuç şu oluyor: kullanıcı sorgusunu tamamlamak için aşağı ok tuşuna basıyor, altında ürün kartları buluyor, hangisinin kendi yazdığının devamı olduğunu anlayamıyor. Panelin üst bloğu metin tamamlamaya, alt bloğu kısayollara ayrılmalı ve bu iki blok yer değiştirmemeli. Sıralama sonuç sayısına göre dinamikleşirse kullanıcı kas hafızası kuramaz.
Her tuş vuruşunun bir bedeli var
Zengin panelin görünmeyen maliyeti ağ tarafında. Kullanıcı kablosuz kulaklık yazdığında bu 17 tuş vuruşu demek. Her vuruşta istek atan bir kutu, tek bir aramada 17 sorgu üretir ve her yanıt sekiz küçük görsel taşıyorsa 20 KB'lik thumbnail'larla yanıt başına 160 KB'ı bulur. Kullanıcı bu görsellerin çoğunu hiç görmez, çünkü panel bir sonraki harfte yeniden çizilir.
Standart tavsiye burada 200 ms'lik bir debounce koymaktır. Dikkat edilmesi gereken nokta şu: debounce ancak eşiği kullanıcının tuşlar arası boşluğundan büyükse istek sayısını düşürür. Saniyede dört tuşa basan biri için tuşlar arası boşluk zaten 250 ms, yani 200 ms'lik bir gecikme hemen hiçbir isteği elemez, sadece hepsini geciktirir. İşe yarayan kombinasyon minimum karakter eşiğiyle birlikte kullanmak: üç karakterden önce hiç istek atmamak ilk iki sorguyu tamamen siler, debounce eşiğini 300-400 ms'e çekmek de yazma sırasındaki ara istekleri gerçekten toplar.
Görsel tarafında ölçü, panelde gösterilen thumbnail'ın ekranda kapladığı boyutun iki katından büyük dosya servis etmemek. Aynı görseli ürün sayfasındaki boyutuyla panele koymak, ölçtüğünüzde en büyük gecikme kalemi olarak karşınıza çıkar.
Klavyeyle gezilemeyen panel
Kaynak metinlerin çoğunun atladığı sınır burası. Açılır öneri paneli, klavye açısından tek bir liste gibi davranmak zorunda: yukarı ve aşağı ok tuşları görsel sırayla birebir aynı sırada ilerlemeli, Escape paneli kapatıp kullanıcının yazdığı metni kutuda bırakmalı, Enter seçili öğeye gitmeli.
Zenginleştirilmiş panel bunu doğal olarak bozar. Solda metin önerileri, sağda ürün kartları olan iki sütunlu bir yerleşimde ok tuşu tek sıra halinde ilerler, göz ise iki sütun görür. Kullanıcı aşağı basar, imleç ekranın öbür ucunda belirir. İki sütun kuracaksanız sütunlar arası geçişi sağ ve sol ok tuşuna bağlamanız gerekir, yoksa panel yalnızca fareyle kullanılabilir hale gelir.
Ekran okuyucu tarafında da panelin varlığı sessizce gerçekleşmemeli. Kutu bir combobox olarak işaretlenir, panel açıldığında aria-expanded güncellenir, seçili öğe aria-activedescendant ile bildirilir ve sonuç sayısı bir canlı bölgede duyurulur. Bunlar birkaç satırlık iş, ama sonradan eklenmesi en zor olan kısım da bu.
SEO tarafında ne olur, ne olmaz
Öneri paneli arama motoru için yok hükmündedir. Panelin içeriği kullanıcının yazdığı harflere göre üretilen bir JSON yanıtıdır, bir sayfa değildir, hiçbir tarayıcı onu gezmez. Dolayısıyla öneri kutusuna anahtar kelime doldurmak organik sıralamaya tek bir şey katmaz.
Site içi aramanın gerçek SEO değeri paneldeki metinde değil, kayıtlarda. Kullanıcıların yazıp sonuç bulamadığı sorgular, sitenizde eksik olan içeriğin listesidir ve bu listeyi başka hiçbir araç bu kadar doğrudan vermez. Sıfır sonuçlu sorguları haftalık olarak dökün, tekrar edenleri ayıklayın, üstüne içerik üretin. Arama kutunuzu SEO'ya bağlayan halka budur.
Kurarken sıra
- Önce düz metin otomatik tamamlamayı çalıştırın ve ölçün. Panelin ilk sürümünde görsel olmasın.
- Minimum karakter eşiği ve tuşlar arası boşluktan büyük bir debounce koyun.
- Klavye gezinmesini ve Escape davranışını, görsel eklemeden önce bitirin.
- Sıfır sonuçlu sorguları kaydetmeye baştan başlayın; sonradan geriye dönük veri toplayamazsınız.
- Görselli kısayolları en son ekleyin ve yalnızca tıklanma oranını takip edebileceğiniz kadarını ekleyin.
İkisi arasında seçmek gerekirse düz metin listesini görselli panelden daha güvenilir buluyorum. Metin listesi yanlış tahmin ettiğinde kullanıcının kaybı bir satırlık göz gezdirmedir; görselli panel yanlış tahmin ettiğinde hem ekranın yarısını hem de indirilmiş yüzlerce kilobaytı harcamış olur. Zengin paneli, katalogu görsel olarak ayırt edilen sitelerde savunurum: mobilya, giyim, kitap kapağı. Sorgunun cevabı bir metin parçasıysa, panelde de metin kalsın.