Sitenizdeki arama kutusuna bir kelime yazıp Enter’a basıyorsunuz ve karşınıza ‘sonuç bulunamadı’ çıkıyor. Oysa o kelimenin geçtiği onlarca yazı var. Ya da sonuç geliyor fakat getirdikleri aradığınız şeyle alakasız. Bazen arama sayfası hiç açılmıyor, boş bir ekran ya da bir hata veriyor. Ziyaretçinin aradığını bulamaması okuma süresini kısaltır ve insanların siteden çabuk ayrılmasına yol açar, bu yüzden üstüne gitmeye değer.
Arama neden çalışmıyor
WordPress’in kendi arama motoru aslında oldukça basit çalışır. Yazıların başlığında ve içeriğinde kelimeyi arar, bulduklarını tarihe göre sıralar. Sonuçların görüntülenmesi ise temanızın search.php şablonuna bağlıdır. Bu şablonda bir hata varsa ya da tema sonuçları yanlış çağırıyorsa arama çalışıyor olsa bile ekranda bir şey göremezsiniz.
Bir diğer sebep eklenti çakışmasıdır. Bazı eklentiler arama sorgusuna müdahale eder, filtreler ekler ve istemeden sonuçları boşaltır. Veritabanı tarafında da sorun olabilir. Yazı içeriğini tutan tablolar bozulduysa arama doğru veri çekemez ve alakasız sonuçlar döner.
Sırayla ne yapmalı
- Önce sorunun temadan mı yoksa WordPress’in kendisinden mi kaynaklandığını anlayın. Temayı geçici olarak varsayılan bir temaya (Twenty Twenty-Four gibi) alın ve aynı aramayı tekrar yapın. Sonuçlar bu temayla düzgün geliyorsa mesele kendi temanızın arama şablonundadır.
- Kendi temanızda search.php dosyasını açıp inceleyin. Arama döngüsünün (loop) doğru kurulduğundan emin olun. Bazı temalarda bu dosya hiç yoktur, o zaman WordPress index.php’ye düşer ve beklenmedik sonuçlar çıkabilir. Gerekirse varsayılan temadaki search.php’yi örnek alabilirsiniz.
- Eklentileri tek tek devre dışı bırakıp aramayı her seferinde test edin. Arama bir eklentiyi kapattığınızda düzeliyorsa suçlu bellidir. Özellikle performans, önbellek ve SEO eklentileri bu konuda şüpheli.
- Sonuçlar hâlâ tutarsızsa veritabanı tablolarını onarmayı deneyin. wp-config.php dosyasına şu satırı ekleyin:
- define(‘WP_ALLOW_REPAIR’, true);
Ardından tarayıcıdan sitenizin adresinin sonuna /wp-admin/maint/repair.php yazarak onarım aracına ulaşın. İşlem bitince bu satırı dosyadan silin, çünkü açık kalırsa güvenlik açığı oluşturur.
Arama sayfasının açılıp açılmadığını hızlıca test etmenin kolay bir yolu var. Tarayıcıya sitenizin adresinin sonuna ?s=deneme yazıp girin. Bu, arama sonuç sayfasını doğrudan çağırır. Sayfa açılıyor ama boşsa sorun sonuçların bulunmasında, hiç açılmıyor ya da hata veriyorsa tema şablonundadır. Bu basit test, nereye bakacağınızı daha en baştan daraltır ve gereksiz adımlarla uğraşmanızı önler.
Bir de şu noktaya dikkat edin: WordPress varsayılan olarak yalnızca yayımlanmış yazı ve sayfalarda arar. Taslak hâldeki ya da özel bir içerik türündeki girdiler arama sonuçlarında çıkmaz. Aradığınız içerik aslında yayımlanmamışsa arama kusurlu değil, sadece o içeriği göremiyordur. Özel içerik türlerini aramaya dâhil etmek için ya şablonda arama sorgusunu düzenlersiniz ya da bunu yapan bir eklenti kullanırsınız.
Daha iyi bir arama kurmak
WordPress’in yerleşik araması kelimeyi tam olarak eşleştirmeye çalışır ve alaka sıralaması zayıftır. Siteniz büyüdükçe bu yetersiz kalır. Burada devreye arama eklentileri girer. Relevanssi ya da SearchWP gibi eklentiler kendi arama indekslerini oluşturur, kelimeleri ağırlıklandırır ve çok daha isabetli sonuçlar döndürür. Yazım yanlışlarını tolere etme, kısmi kelime eşleştirme, özel alanlarda arama gibi özellikler de sunarlar.
Bu eklentileri kurduğunuzda genelde bir kez indeksleme yapmanız gerekir. İndeksleme, sitedeki tüm içeriği tarayıp aranabilir hâle getirir. Yeni yazı eklediğinizde indeks otomatik güncellenir, ama toplu bir içerik aktarımı yaptıysanız indeksi elle yenilemeyi unutmayın.
Bir daha bozulmaması için
Tema değiştirdiğinizde arama sayfasının çalışıp çalışmadığını hemen test etmek iyi bir refleks, çünkü her temanın arama şablonu farklı davranır. Arama eklentisi kullanıyorsanız içerik aktarımlarından sonra indeksi yenilemek tutarlılığı korur. Veritabanını ara ara onarım aracından geçirmek de birikmiş küçük bozuklukları temizler. Bu alışkanlıklarla ziyaretçileriniz aradıklarını ilk denemede bulur.
Bu işleri kendiniz yapmak yerine profesyonel destek isterseniz, WordPress bakım ve teknik destek hizmetime göz atabilirsiniz.
Bu konunun tüm rehberi: WordPress Hataları ve Çözümleri