Gayrimenkul sitelerinde arama ve filtreleme, çoğu içerik sitesinden yapısal olarak farklı bir sorun sunar. Konum, ilan tipi, fiyat aralığı, metrekare ve oda sayısı gibi değişkenler aynı anda aktif olabilir; her kombinasyon teknik olarak farklı bir URL üretebilir. Bu durum yönetilmezse hem arama motoru botlarının karşısına özdeş içerikli binlerce sayfa çıkarır hem de kullanıcının aradığını bulamadan siteden ayrılmasına yol açar.

Temel gerilim şurada: filtreleme kullanıcı için anında geri bildirim sağlar, ama SEO için önemli olan belirli kombinasyonların indekslenebilir sayfaya dönüşmesidir. Her filtre parametresini ayrı bir URL'e çevirmek ne doğru ne de yanlıştır; doğru soru, hangi kombinasyonların kalıcı sayfa değeri taşıdığıdır.

Bu iki hedefi dengelemek için mimarinin üç katmanı ayrı ayrı ele alması gerekir: URL yapısı, kanonikalleştirme kararları ve filtre hiyerarşisi. Bu üç katman birbiriyle çelişmediğinde, hem bot hem kullanıcı sitede net bir yol izler.

Filtre parametresi mi, kategori sayfası mı?

Gayrimenkul sitelerinde en erken verilmesi gereken karar budur. "İstanbul'da satılık daire" bir kategori sayfasıdır; bu kombinasyon kalıcı arama hacmi taşır, başlık ve meta açıklama elle yazılabilir, iç link alabilir. "İstanbul'da 3+1, 150-200 m², 5-7 milyon TL arası satılık daire" ise büyük olasılıkla dinamik bir filtre sonucudur; indekslenmeye değer bir sayfa olmaktan çok, kullanıcının kendi sorgu kombinasyonudur.

Ayrım kriteri ikidir: o kombinasyona yönelik belirgin bir arama hacmi var mı ve site bu sayfayı düzenli içerikle güncel tutabilecek mi? Her ikisine de evet yanıtı verilemiyorsa, sayfa kategori değil filtre sonucudur.

Kategoriye dönüştürülmeyecek kombinasyonların URL'lerini baştan noindex etiketiyle işaretlemek veya kanonical etiketiyle üst sayfaya bağlamak, ileride birikecek içerik özdeşliği sorununu önler. Bu kararı vermeden önce kategori sayısını belirleme mantığına bakmak faydalıdır; gayrimenkul filtreleri ile e-ticaret kategorileri farklı görünse de aynı soruya yanıt arar: hangi granülarite kalıcı sayfa değeri taşır?

URL yapısında hangi filtreler yol segmenti, hangileri sorgu parametresi?

Yol segmenti (/istanbul/satilik/daire/) indekslenebilir, kalıcı ve hiyerarşik bir yapı kurar. Sorgu parametresi (?min_fiyat=5000000&max_fiyat=7000000&oda=3) dinamik filtre değerlerini taşır ve çoğu durumda noindex veya kanonikalleştirme ile yönetilir.

Konum ve ilan tipi kombinasyonu yol segmentine alındığında net bir hiyerarşi oluşur: /şehir/ilçe/ilan-tipi/mülk-tipi/. Bu dört segment çoğu gayrimenkul sitesi için yeterlidir; daha fazla derinlik crawl bütçesini gereksiz yere tüketir ve her katmanı içerikle desteklemek zorlaşır.

Fiyat, metrekare ve oda sayısı sorgu parametresine bırakılır. Bu parametreler JavaScript ile yönetilebilir ve arama motoru botlarına kanonical URL olarak kök kategori sayfası gösterilebilir. Kullanıcı filtreyi değiştirdiğinde URL güncellenir, ama bu yeni URL'ler tarama kuyruğuna girmez.

Bir istisna vardır: bazı şehir-ilçe-ilan tipi kombinasyonları yeterince aranıyorsa ve site bu sayfaları içerikle destekleyebiliyorsa yol segmentine eklenebilir. Ama bu karar teker teker ve ölçümlenerek verilmelidir, "tüm kombinasyonları indeksle" yaklaşımı değildir. Hiyerarşi büyüdüğünde URL tutarlılığı da zorlaşır; bu kararları baştan netleştirmek, ilerleyen dönemde yapılacak yönlendirme çalışmalarının kapsamını doğrudan etkiler.

Konum hiyerarşisi nasıl kurulmalı?

Konum, gayrimenkul sitelerinin en önemli filtre boyutudur ve aynı zamanda en karmaşığıdır. Şehir, ilçe, mahalle ve hatta sokak gibi farklı granülarite seviyeleri aynı site içinde birden fazla URL katmanı anlamına gelir.

Hiyerarşiyi netleştirmek ilk adımdır. Şehir sayfaları her büyük şehir için açılabilir, ancak ilçe sayfaları yalnızca ilçede yeterli ilan yoğunluğu olduğunda değer taşır. Mahalle düzeyine inmek çoğu site için erken bir karardır; ilan yoğunluğu düşük mahallelerde açılan sayfalar ince içerikle dolar ve arama motorları bu sayfaları hızla değersizleştirir.

Pratik bir yaklaşım şudur: şehir ve ilçe sayfalarını baştan açmak, mahalle sayfalarını ise o ilçede belirli bir ilan eşiğini aştıktan sonra devreye almak. Bu eşiği önceden belirlemek, operasyonel kaosu önler. Bir ilçede 50 aktif ilan varken mahalle sayfası açmak, sayfa başına düşen içeriği o kadar inceltir ki sayfanın herhangi bir değer üretmesi güçleşir.

Konum hiyerarşisinin bir başka boyutu da kullanıcının mahalle adını bilip bilmemesidir. Bazı büyük şehirlerde mahalle adları yaygın olarak aranır, bazılarında ilçe adı yeterlidir. Arama talebi olmayan bir mahalle sayfasını yalnızca hiyerarşik bütünlük için açmak, crawl bütçesini verimli kullanmaz.

Kanonikalleştirme ve içerik özdeşliği

Filtre kombinasyonları kontrol edilmezse aynı ilanlar farklı URL'lerde tekrar tekrar görünür. "İstanbul Kadıköy satılık 2+1" ve "İstanbul Kadıköy satılık 2+1, 80-100 m²" sayfaları büyük olasılıkla çok benzer bir ilan listesi sunar. İkincisi kanonical etiketle birincisine bağlanmazsa, arama motoru botları bu iki sayfayı rakip içerik olarak görür.

Kanonikalleştirme kararı şu soruya bağlıdır: bu URL'in bağımsız bir sayfa olarak indekslenmesi için yeterli farklı içerik sunuyor mu? Fiyat ve metrekare aralıkları gibi sürekli değişen parametreler için yanıt çoğunlukla hayırdır. Konum ve ilan tipi kombinasyonları için ise şehir ve ilan yoğunluğuna bakarak karar vermek gerekir.

Noindex etiketi ise daha kesin bir tercih olduğundan dikkatli kullanılmalıdır. Bir sayfayı kanonikalleştirmek, botun o sayfayı ziyaret ettiğinde sinyali doğru sayfaya yönlendirmesini sağlar; noindex ise sayfanın indekslenmesini tamamen engeller. Dinamik filtre sonuçlarında, kanonical etiket genellikle daha kontrollü bir çözümdür.

Siteye yeni bir konum veya ilan tipi eklendiğinde kanonikalleştirme kurallarının otomatik olarak devreye girebilmesi için şablon düzeyinde kurallar tanımlamak gerekir. Bu kural seti yoksa her yeni parametre grubunu elle yönetmek zorunda kalırsınız; operasyonel yük kısa sürede kontrolden çıkabilir. Headless CMS mimarilerinde bu kurallar içerik modelinin bir parçası olarak tanımlanabilir ve şablon değiştiğinde otomatik olarak güncellenir.

Filtre sırası ve kullanıcı davranışı

Filtre sırası, kullanıcının karar sürecini yansıtmalıdır. Önce konum, sonra ilan tipi, ardından fiyat; bu sıra çoğu gayrimenkul aramasında doğaldır. Metrekare ve oda sayısı genellikle daha sonra devreye girer. Ancak bu sıra sabit değildir; bazı kullanıcılar bütçeden başlar, bazıları mülk tipinden.

Filtreler varsayılan sırayla sunulduğunda, sitenin "bu adımları takip et" mesajı verdiği algısı oluşur. Kullanıcı konum seçmeden fiyat aralığı belirleyemiyorsa, bu kısıtlama net bir geri bildirimle açıklanmalıdır; aksi takdirde arayüz kırık görünür.

Aktif filtre kombinasyonu ekranda görünür kalmalıdır. Kullanıcı beş filtre seçtikten sonra hangilerinin açık olduğunu göremiyorsa, sonucu neden beklediğinden farklı bulduğunu anlayamaz. Her açık filtreyi etiket olarak göstermek ve tek tıklamayla kaldırabilmek, terk oranını düşürür.

Filtre arayüzünün mobil davranışı ayrıca ele alınmalıdır. Masaüstünde yan panel olarak çalışan filtreler, mobilde tam ekran kaplayan bir modal veya çekmece yapısına dönüşebilir. Bu dönüşüm tasarım kararı olduğu kadar mimari bir karardır: filtre durumunun URL'e yansıması, sayfanın yeniden yüklenmesi ve bot tarafından okunabilirliği bu geçişte tutarlı kalmalıdır.

Faceted navigation ve crawl bütçesi

Çok boyutlu filtreleme sistemi, teknik literatürde faceted navigation olarak anılır. Bu yapıda her filtre kombinasyonu teorik olarak yeni bir URL üretebileceğinden, büyük gayrimenkul sitelerinde potansiyel URL sayısı milyonlara ulaşabilir. Arama motoru botları bu URL'leri taramak için zaman harcar; taranacak değerli sayfa sayısı azaldıkça önemli sayfaların güncellenmesi gecikmeli yansır.

Crawl bütçesini korumak için üç mekanizma birlikte kullanılabilir: robots.txt ile belirli parametre kombinasyonlarını tarama dışı bırakmak, kanonical etiketlerle botları kök sayfalara yönlendirmek ve sitemap'e yalnızca indekslenmesi hedeflenen sayfaları eklemek. Bu üç mekanizma birbirini tamamlar; biri atlandığında diğerleri yükü tek başına taşıyamaz.

Robots.txt'e parametre bazlı disallow kuralları eklemek hızlı bir çözüm gibi görünür, ancak dikkatli yazılmazsa geçerli kategori sayfalarını da dışarıda bırakabilir. Parametre adları tutarlı değilse bu kural seti hızla bakımsız hale gelir. Kanonical etiket yöntemi daha esnektir: her URL bir kez taranabilir, ancak bot bu URL'deki sinyali kanonical sayfaya aktarır.

Site büyüdükçe yapısal kararların crawl verimliliğine etkisi de büyür. Düzenli yapısal denetimlerde tarama verilerini incelemek, hangi parametre gruplarının beklenmedik şekilde tarandığını gösterir ve erken müdahaleye olanak tanır.

Filtre sayfaları için içerik desteği

İndekslenmesi hedeflenen filtre kombinasyonlarının salt ilan listesinden fazlasını sunması gerekir. Arama motoru botları, içeriği yalnızca dinamik olarak yüklenen bir ilan listesinden ibaret sayfaları değersiz bulur. Bu sayfaların en azından bir tanıtım paragrafı, konum veya ilan tipine özgü bir bağlam bilgisi ve ilgili iç bağlantılar içermesi beklenir.

Şablon düzeyinde bu içeriği otomatik üretmek mümkündür: şehir adı, ilçe adı ve mülk tipi değişkenlerini bir metin şablonuna yerleştirerek her kategori sayfası için özgün bir giriş paragrafı oluşturulabilir. Ancak bu yöntem dikkatli kullanılmazsa özdeş şablon metinlere yol açar. Şablon metnin gerçekten farklılaşması için konum verisini, yerel bilgiyi veya ilan istatistiklerini içermesi gerekir.

İçerik desteği olmadan açılan filtre sayfaları başlangıçta sıralamaya girebilir, ancak düşük etkileşim ve yüksek hemen çıkma oranıyla birlikte bu sıralama kısa sürede gerilemeye başlar. Bilgi mimarisi planlanırken içerik kapasitesi ile sayfa sayısı arasındaki denge, gayrimenkul sitelerinde de aynı şekilde geçerlidir.

Yapı büyüdükçe yönetim nasıl korunur?

Gayrimenkul sitelerinde ilan hacmi, konum çeşitliliği ve filtre seçenekleri zamanla artar. İlk kurulan mimari bu büyümeyi taşıyamazsa yeniden yapılandırma kaçınılmaz olur; bu yeniden yapılandırma binlerce URL'in yönlendirilmesini gerektirebilir. Kapsamlı bir yönlendirme planı bu geçişlerde kritik öneme sahiptir, ancak önceden düşünülmüş bir mimari bu maliyeti büyük ölçüde azaltır.

Yapı tutarlılığını korumak için bir parametre kayıt defteri tutmak faydalıdır: her filtre parametresinin adı, URL'deki yeri, kanonikalleştirme kuralı ve sayfa tipi tek bir belgede izlenir. Yeni filtre eklendiğinde bu belge güncellenir ve şablon ayarları ona göre yapılır. Bu belge olmadan farklı geliştiricilerin farklı dönemlerde farklı kararlar aldığı, tutarsız bir parametre yapısı oluşur.

Navigasyonun sade kalması için geçerli olan ilke, filtre yapısı için de geçerlidir: her yeni boyut bir maliyet taşır ve bu maliyet karar verilmeden önce görülmelidir. Yeni bir filtre boyutunun URL yapısını, kanonikalleştirme kurallarını ve sayfa şablonlarını nasıl etkileyeceği, teknik ekip tarafından ön değerlendirmeye tabi tutulmalıdır.

Arama ve filtreleme mimarisi, gayrimenkul sitelerinde hem kullanıcı deneyimini hem de arama motoru görünürlüğünü doğrudan belirler. İki hedefi aynı anda taşımak zorunda olan bu yapıda, başlangıçta verilen kararların uzun vadeli sonuçları büyük olur. Hangi kombinasyonların kalıcı sayfa değeri taşıdığına, URL hiyerarşisinin nerede biteceğine ve kanonikalleştirme mantığının nasıl işleyeceğine dair kararlar bir kez verildikten sonra kapsamlı bir mimari değişiklik yapmadan geri alınamaz.

Pratik başlangıç noktası şudur: en az beş şehrin, iki ilan tipinin ve üç mülk tipinin tüm kombinasyonlarını yazıya dökmek ve her kombinasyon için "bu bağımsız bir sayfa mı, filtre sonucu mu?" sorusunu cevaplamak. Bu alıştırma, mimari kararları soyut tartışmadan somut URL listesine taşır ve ekip içindeki farklı beklentileri yüzeye çıkarır.

İyi kurulmuş bir filtre mimarisi zamanla sessizce çalışır: kullanıcı aradığını bulur, bot değerli sayfaları tarar, yeni ilanlar doğru kategoriye düşer. Ters durumda ise sorunlar birikir ve her yeni ilan sezonu yapısal borcu biraz daha artırır.