Erişilebilirlik için AJAX destekli siteler tasarlama

Birçok web sitesi sahibi, güçlü web uygulamaları gibi işlev gören dinamik sayfalar oluşturarak sitelerindeki kullanıcı deneyimini iyileştirmede AJAX kullanmanın avantajlarını keşfetmiştir. Ancak teknoloji dikkatli bir şekilde uygulanmadığı taktirde, Flash gibi AJAX da, bir sitenin arama motorları tarafından dizine eklenmesini zorlaştırabilir. AJAX ile ilgili iki ana arama motoru sorunu vardır: Arama motoru bot'larının içeriğinizi görebilmelerini sağlamak ve gezinmenizi görebilmelerini ve izleyebilmelerini sağlamak.

Googlebot, HTML bağlantılarının yapısını anlama konusunda mükemmel olmasına karşın, gezinme için JavaScript kullanan sitelerde yolunu bulma konusunda güçlük çekebilir. JavaScript’i anlama konusunda iyi bir iş çıkarmaya çalışıyoruz, ancak sizin Google ve diğer arama motorları tarafından taranabilen bir site oluşturmaya yönelik en iyi çözümünüz, içeriğinize HTML bağlantıları vermektir.

Erişebilirlik için tasarım

Web sitesi sahiplerinin, arama motorları değil kullanıcılar için sayfa oluşturmaları önerilir. AJAX sitenizi tasarlarken, JavaScript uyumlu tarayıcılar kullanamayan kullanıcılar da (örneğin, ekran okuyucuları veya mobil cihazlar kullanan kişiler) dahil olmak üzere, kullanıcılarınızın ihtiyaçlarını düşünün. Sitenizin erişilebilirliğini test etmenin en kolay yollarından birisi, JavaScript devre dışıyken sitenin önizlemesini gerçekleştirmek veya Lynx gibi bir salt metin tarayıcısında siteyi görüntülemektir. Bir siteyi salt metin olarak görüntülemek, resimlere veya Flash'a yerleştirilmiş metin gibi Googlebot'un görmekte zorluk çektiği diğer içeriği tanımlamanıza da yardımcı olur.

iFrame'lerden Kaçının - ya da içeriklerine ayrı olarak bağlantı verin

iFrame'ler yoluyla görüntülenen içerik dizine eklenmeyebilir ve Google'ın arama sonuçlarında görüntülenmeyebilir. İçerik görüntülemek için iFrames kullanmaktan kaçınmanızı öneririz. iFrame eklerseniz Googlebot'un bu içeriği tarayıp dizine ekleyebilmesi için, görüntüledikleri içeriğe ek metin tabanlı bağlantılar sağlamayı unutmayın.

Kademeli iyileştirmelerle geliştirin

Sıfırdan başlıyorsanız sitenizin yapısını ve gezinme sistemini sadece HTML ile oluşturmak iyi bir yaklaşım olacaktır. Sitenizin sayfalarını, bağlantılarını ve içeriğini yerleştirdikten sonra da, AJAX ile görünümde ve arayüzde düzeltmeler yapabilirsiniz. Modern tarayıcılara sahip kullanıcılar AJAX'ın sunduğu avantajların keyfini çıkarırken Googlebot da HTML'yi memnuniyetle kabul edecektir.

Elbette, AJAX işlevselliği için JavaScript gerektiren bağlantılarınız olacaktır. Web geliştiricisi Jeremy Keith, AJAX ile statik bağlantıların birlikte kullanılmasını sağlayan bu yöntemi, Hijax olarak olarak adlandırmıştır.

Bağlantılarınızı oluştururken, onları, JavaScript işlevi çağırmalarının yanı sıra statik bir bağlantı da sunacak şekilde biçimlendirin. Bu yolla, JavaScript kullanıcıları için AJAX işlevselliğine sahip olursunuz ve JavaScript kullanıcısı olmayanlar da komut dizisini yok sayıp bağlantıyı izleyebilirler. Örneğin:

<a href="ajax.htm?foo=32" onClick="navigate('ajax.html#foo=32');
 return false">foo 32</a>

Statik bağlantı URL’sinin, AJAX kodu tarafından kullanılan (#foo=32) kod parçası yerine (?foo=32) parametresine sahip olduğuna dikkat edin. Arama motorlarının URL parametrelerini tanıyıp, kod parçalarını genellikle yok saymaları nedeniyle, bu önemli bir husustur. Artık statik bağlantılar sunduğunuz için, kullanıcılar ve arama motorları paylaşmak veya başvurmak istedikleri içeriğe bağlantı verebilirler.

Tarama kabiliyetimizi sürekli geliştirmemize rağmen, HTML bağlantılarının kullanımı sitenizin yapısını daha iyi anlamamıza (ve diğer arama motorlarının, mobil cihazların ve kullanıcıların da daha iyi anlamasına) yardımcı olan etkin bir yöntem olarak kalmaktadır.

Yönergeleri uygulayın

Burada açıklanan ipuçlarına ek olarak, bir siteyi hem Google hem de kullanıcılarınız açısından nasıl iyileştirebileceğiniz hakkında daha fazla bilgi edinmek için Web Yöneticisi Yönergelerimizi incelemeniz de önerilir. Yönergeler, gizli JavaScript yönlendirmeleri dahil olmak üzere kaçınılması gereken bazı uygulamalara da işaret etmektedir. Uyulması gereken genel bir kural, kullanıcılara kapasitelerine göre farklı deneyimler sunarken, içeriğin aynı kalması gerektiğidir. Örneğin, Wysz'nin Hamster Çiftliği için bir sayfa oluşturduğumuzu düşünelim. Sayfanın en üstünde "Wysz'nin Hamster Çiftliği" başlığı ve altında da en son gelen hamsterların AJAX destekli slayt gösterisi bulunmaktadır. Aynı sayfada JavaScript’in devre dışı bırakılması, aşağıdaki ek metni görüntüleyerek kullanıcıyı şaşırtmamalıdır:

Wysz'nin Hamster Çiftliği -- hamsterlar, en iyi hamsterlar, ucuz hamsterlar, bedava hamsterlar, evcil hayvanlar, çiftlikler, hamster çiftlikleri, dans eden hamsterler, kemirgenler, hampsterler, hamserlar, en iyi hamster kaynağı, evcil hayvan oyuncakları, dans dersleri, sevimli, hamster numaraları, evcil hayvan maması, hamster’ların doğal ortamları, hamster otelleri, hamster doğum günü fikirleri ve daha fazlası!

Daha iyi bir uygulama, JavaScript etkinleştirilsin veya etkinleştirilmesin aynı metni görüntüler, üstelik en iyi senaryoya göre JavaScript kullanıcısı olmayan kullanıcılara slayt gösterisinin HTML sürümünü sunar. Gizli metin hakkında daha fazla bilgi edinin.