Ticimax kullanan mağazalarda arama iyileştirmesi, açık sistemlerdekinden farklı bir sorudan başlar. Shopify veya WooCommerce'te "hangi yöntemi seçelim" diye sorarsınız; Ticimax'ta önce "nereye müdahale edebiliyoruz" sorusunu yanıtlamak gerekir.

Bu yazı, Ticimax altyapısındaki bir mağazada site içi aramanın nasıl iyileştirildiğini anlatıyor: panelden eklenen JavaScript alanının ne yapıp ne yapamadığı, kataloğun SOAP web servisiyle nasıl senkronlandığı ve bu senkronun Ticimax'a özgü sessiz tuzağı, arama kutusunun ve sonuç sayfasının devralınması.

Ticimax'ta müdahale sınırı nerede?

Ticimax barındırılan (hosted) kapalı bir altyapıdır. Bunun kurulum açısından iki somut sonucu var:

  • Sunucu tarafında kod çalıştıramazsınız. Arama sonuçlarını sayfa oluşturulurken sunucuda üretip HTML'e basmak mümkün değildir.
  • Panel üzerinden siteye JavaScript ekleyebilirsiniz. Bütün iş bu alandan yüklenen script üzerinden yürür.

Bu, bir kısıt gibi görünse de aramaya özgü bir avantaj taşır: arama zaten doğası gereği etkileşimli bir işlevdir. Ziyaretçi yazarken sonuçların anlık değişmesi gerekir; yani sonuçlar her hâlükârda tarayıcıdan istenir. Sunucu tarafında üretilememesi, aramada yorum bloğu veya ürün açıklaması kadar sorun değildir.

Asıl kısıt başka yerde: tema dosyalarına erişiminiz yok. Bloğun sayfada nereye oturacağını, hangi elemanın devralınacağını tema sınıf adları üzerinden çözmek zorundasınız. T-Soft gibi tema şablonuna panelden erişim veren sistemlerde bu belirsizlik yoktur; Ticimax'ta vardır ve kurulumun en çok emek isteyen tarafıdır.

Katalog: SOAP web servisi

Arama ancak gördüğü ürünü bulabilir. Ticimax tarafında katalog, SOAP web servisleri üzerinden çekilir: ürün adı, açıklama, kategori, marka, stok kodu, barkod, fiyat ve stok durumu.

Bunların hepsinin birlikte alınması önemlidir. Yalnızca ürün adı üzerinden çalışan bir arama, müşterinin kategoriyle veya markayla aradığı ürünleri kaçırır — ve bu kayıp sessizdir, çünkü arama "çalışıyor" görünür.

Ticimax SOAP'un sessiz tuzağı

Ticimax entegrasyonlarında karşılaştığımız ve buraya özellikle yazdığımız bir davranış var: SOAP isteğindeki filtre alanlarının sırası beklenen düzende değilse, servis hata vermez — filtreleri sessizce yok sayar.

Sonuç, teşhis edilmesi zor bir durumdur. İstek başarılı döner, veri gelir, hiçbir yerde hata görünmez; ama gelen veri istediğiniz veri değildir. Sayfalama beklendiği gibi ilerlemez ya da filtrelenmiş olması gereken kayıtlar da gelir. Geliştirici tarafta "servis çalışıyor" sanılır, mağaza tarafında ise arama tuhaf davranır.

Bu yüzden senkron kurulduktan sonra tek bir doğrulama adımı şarttır: çekilen ürün sayısı, Ticimax panelinde görünen ürün sayısıyla karşılaştırılmalıdır. Eşleşmiyorsa sorun arama algoritmasında değil, senkrondadır ve algoritmaya bakarak günlerce zaman kaybedilebilir.

Bir arama sorununu incelemeye her zaman "kaç ürün senkronlandı" sorusuyla başlayın. Arama, göremediği ürünü bulamaz.

Arama kutusunu devralmak

Panelden yüklenen script, mağazanın arama kutusunu dinler ve tıklandığında kendi ekranını açar. Burada Ticimax'a özgü bir kırılganlık var: arama kutusunun sınıf adı ve konumu temadan temaya değişir.

Sabit bir sınıf adına gömülü çözüm, mağaza tema değiştirdiğinde sessizce çalışmaz hale gelir. Doğru yaklaşım, devralınacak elemanın mağaza bazında ayar olarak tutulmasıdır: kurulum sırasında belirlenir, tema değişirse tek bir ayar güncellenir, kod değişmez.

Aynı mantık sonuç listesinin basılacağı kapsayıcı için de geçerlidir. Bu iki seçici, kurulumun mağazaya uyarlanan kısmıdır.

Aramanın üç katmanı

Katalog senkronlandıktan sonraki kısım platformdan bağımsızdır ama sonucu doğrudan belirler. Üç katman, müşterinin üç farklı davranışını karşılar.

Birinci katman: harf benzerliği

Müşteri ürün adını duyduğu gibi yazar ve markalar çoğunlukla yabancı kelimelerdir. Kelime eşleşmesine dayanan aramalar, kelimenin başı doğru yazıldığında bulur, ortası yanlış yazıldığında bulmaz. Ziyaretçi ürünü bilir, adını neredeyse doğru yazar ve "sonuç bulunamadı" görür.

Çözüm, kelimeleri bütün olarak değil üçer harflik parçalara bölüp örtüşmeye bakmaktır. Kritik ayrıntı, karşılaştırmanın ürün adının tamamıyla değil eşleşen bölümüyle yapılmasıdır: uzun ürün adlarında (marka + model + hacim + tip) tüm dizgiyle karşılaştırma kısa sorguyu düşük puana iter ve doğru ürünü eler.

İkinci katman: kategori ve marka ağırlığı

Yazım hatası toleransı açıldığında yeni bir sorun doğar: arama artık sonuç bulur, ama alakasız sonuçları da getirir. Bir yazım hatası, kataloğun büyük bölümünde geçen yaygın bir kategori veya marka adına benzediğinde arama sessizce bir kategori taramasına dönüşür.

Sabit bir eşik koymak ("şu değerin altındaysa sayma") çözüm gibi görünür ama o değer tek bir mağazanın verisine bakılarak seçilmiş olur; farklı bir katalogda ya çok gevşek ya çok katı kalır. Daha sağlam yol, her terimin kataloğun ne kadarında geçtiğine göre ağırlıklandırılmasıdır. Tek üründe geçen bir marka tam ağırlık alır; kataloğun yarısında geçen bir kategori adının ağırlığı belirgin düşer.

Bu yaklaşımın değeri, ağırlıkların kataloğun kendisinden hesaplanmasıdır. Yeni mağazada elle ayar gerekmez.

Üçüncü katman: anlam — yalnızca gerektiğinde

Bazı ziyaretçiler ürün adını hiç bilmez, ne aradığını tarif eder: "kışlık kalın mont", "hediyelik kutulu set". Bu sorgularda harf benzerliği işe yaramaz çünkü eşleşecek bir ürün adı yoktur; gereken şey anlamdır.

Anlam tabanlı arama güçlüdür ama iki maliyeti vardır: her sorgu için dış bir servise gidiş-dönüş ve bunun ücreti. Arama her tuş vuruşunda çalıştığına göre, her sorguda bu katmana gitmek hem yavaş hem pahalıdır. Doğru kurgu katmanları sırayla kullanmaktır: harf benzerliği yeterli sonuç verdiğinde anlam katmanına hiç gidilmez; yalnızca sonuç yetersiz kaldığında ya da sorgu tarif edici olduğunda devreye girer.

Sonuç sayfasını devralmak

Öneri listesi iyileştirildiğinde iş yarım kalır: Enter'a basan ziyaretçi Ticimax'ın kendi arama sonuç sayfasına gider ve orada yine varsayılan sıralamayı görür.

Bu sayfa da devralınabilir. Üç noktaya dikkat edilir:

  • Geçiş perdelenmeli. Aksi halde mağazanın kendi listesi bir an görünür, sonra sizinki onun yerini alır; ziyaretçi iki farklı liste görmüş olur.
  • Perde zaman aşımıyla korunmalı. Bir aksaklıkta perde kalkmazsa sayfa boş kalır. Kendi listeniz gelmese bile perde birkaç saniye içinde mutlaka kaldırılmalıdır.
  • Sayfa tam bir sonuç sayfası olmalı. Ürün adı, fiyat, indirim oranı, ürüne gitme; sıralama menüsü, filtreler ve sütun sayısı seçimi. Yalnızca görsel dizen bir ızgara, devraldığınız sayfayı mağazanın kendi sayfasından geriye götürür.

Varyasyonlar ve stok

Ticimax kataloglarında varyasyon yaygındır ve arama sonuçlarında ürünün mü varyasyonun mu listeleneceği bilinçli bir karardır. Her varyasyonu ayrı satır yapmak sonuç sayfasını aynı ürünle doldurur; doğru davranış ürünü tek satırda gösterip varyasyon sayısını belirtmektir.

Sepete ekleme sunulacaksa yalnızca tek varyasyonlu ürünlerde sunulmalıdır — çok varyasyonlu üründe hangi varyasyonun ekleneceği belirsizdir ve müşteriyi yanlış bedeni sepete atmaktansa ürün sayfasına göndermek doğrudur.

Stok tarafında ise tükenen ürünü aramadan tamamen gizlemek, o ürünü arayan müşteriyi sıfır sonuçla karşılar. Daha iyisi ürünü listede tutup açıkça "tükendi" olarak işaretlemektir.

Sıfır sonuç yerine öneri

Bütün katmanlara rağmen sonuç bulunamayan sorgular olacaktır. "Sonuç bulunamadı" yazıp durmak ziyaretçiyi çıkışa yönlendirmektir; bunun yerine kataloğun kendi kelime dağarcığından en yakın karşılık önerilebilir.

Önerinin işe yaraması için görünür olması gerekir: arama kutusunun hemen altında, yazılan metinden büyük puntoda, masaüstünde Tab tuşuyla kabul edilebilir ve mobilde dokunulabilir. Sayfanın dibinde küçük bir not olarak duran öneri yok sayılır.

Neyi ölçmeli?

ÖlçümNeden önemli
Sıfır sonuç oranıDoğrudan kaybedilen nitelikli trafik; iyileştirmenin en net göstergesi.
Arama sonrası tıklama oranıSonuç geliyor ama doğru mu? Düşükse sıralama alakasız demektir.
Arama yapanların dönüşüm oranıGenelde site ortalamasının belirgin üstündedir; fark aramanın değerini gösterir.
En çok aranan sıfır sonuçlu terimlerHem arama ayarı hem katalog için yol gösterir: talep var, ürün yok.

Son satır çoğu zaman en değerlisidir. Sürekli aranıp bulunamayan bir terim, bir arama sorunu olmayabilir — kataloğunuzda gerçekten eksik olan bir ürünün habercisi olabilir.

Özet

Ticimax'ta arama iyileştirmesi, kapalı sistemin çizdiği sınırlar içinde ilerler ve bu sınırlar aramaya özgü olarak yumuşaktır: sonuçlar zaten tarayıcıdan isteniyor olduğu için sunucu erişiminin olmaması aramada büyük kayıp değildir.

Belirleyici olan iki şey: kataloğun eksiksiz senkronlanması — SOAP filtre sırasının sessiz tuzağı dahil — ve devralınacak elemanların mağaza bazında ayar olarak tutulması, çünkü Ticimax temalarında sınıf adları değişir. Bunların üzerine üç katmanlı eşleştirme ve devralınmış bir sonuç sayfası eklendiğinde, kapalı bir altyapıda da açık sistemlerdekiyle aynı arama deneyimi kurulabilir.