![]()
Arkadaşlar,
Artık AJAX kullanımı oldukça arttı. Ancak, bu durum Arama Motorları
açısından
sayfanın indexlenmesinde olumsuz sonuç verdi.
Çünkü, JS ile yapılan AJAX çağrıları, Arama Motorları tarafından
algılanamıyor.
Örneğin:
[a href="#" onclick="SayfaGoster(3); return false;"]Ürünlerimiz[/a]
Ayrıca, bu örnekte URL'de yazan http://www.mydomain.com ifadesi değişmiyor.
Böyle olunca sayfanın kalıcı linki (permenant link) başkalarıyla
paylaşılamıyor.
Yani ziyaretçiler, "Abi, istediğin ürün şu sayfada : xxx " gibi bir
mesaj gönderilemiyor.
*Burada 3 adet sorun var:*
1.) Arama Motorlarında yer alamama
2.) Kalıcı link verememe
3.) Hedefi yeni pencerede/sekmede aç sağ tuş fonksiyonları çalışmıyor.
*Aşağıdaki basit çözüm ile buradaki sorunların 2 tanesini gidermek mümkün:*
[a href="urunler.php" onclick="SayfaGoster(3); return
false;"]Ürünlerimiz[/a]
Bu kullanımda, href'e değer girildiği için;
1.) Arama motoru doğru indexleme yapabilir.
2.) Hedefi yeni pencerede/sekmede aç sağ tuş fonksiyonları çalışır.
Geriye sadece AJAX kullanımında adres satırının değiştirilmesi konusu
kalıyor.
Geçmişte FLASH kullanılarak bunun yapılabildiğini okumuştum, ancak o
zaman ilgimi çekmemişti.
Ajax ile sayfa URL'inin değiştirilmesi, sayfanın yeniden yüklenmesine
(post-back) neden olur.
Bu da AJAX'ın getirdiği avantajların silinip gitmesi anlamını taşır.
FaceBook'da Fotograf Albumü bölümünü incelerken şunu gördüm:
Sonraki/Önceki fotoğraf düğmelerine basıldığında URL'de :
*http://www.facebook.com/*photo.php?pid=300319&id=772293458&ref=nf*#pid=160222&id=686426247*
gibi "URL DEĞİŞİMİ" olduğunu gözlemledim.
Aynı sayfa adresi şu şekilde yazıldığında yine sayfa çalışmaktadır.
*http://www.facebook.com/*photo.php*#pid=160222&id=686426247*
Sanırım AJAX çözümünde bu noktaya odaklanırsam üçüncü ve son sorun da
çözülmüş olur.
Bu çerçevede, URL'deki *#* karakteri sonrasındaki *pid* ve *id* gibi
parametrelerin ayrılarak PHP'de $_GET['id'] biçiminde kullanılabilmesi
için bir çalışma yapmak yeterli olacaktır.
Sorunu ve çözümü bu şekilde tespit ettikten sonra sanırım bu konuda
web'den örnek aramaya gerek olmayacaktır.
Diğer taraftan, Apache'deki mod_rewrite ile AJAX çağrısı konusunun
ayrıca ele alınması gerekir düşüncesindeyim.
Arkadaşlar, bu konudaki fikirlerinizi grup üyeleri ile paylaşmanızı dilerim.
Selamlar,
Nuri AKMAN
Ustun ERGENOGLU yazmış:
> http://www.contentwithstyle.co.uk/Articles/38/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps
> aradığınız bu olsa gerek.
>
> 26.02.2008 tarihinde serkan_at_yaramazca.com <serkan_at_yaramazca.com> yazmış:
>
>> # sayfa icinde achor olarak kullanilabilir ama burdaki sorun ajax ile
>> kullanimi. ajaxin bir dez avantaji da bavk tusunun ve si
>> kullanilanlara eklenin calismamasidir. ama bunun # ile sayfa icinde
>> cozuldugunu birkac sitede gordum. urlde # li sekilde cagrilinca ajax
>> tetikleniyordu ve o sayfa ulasilabiliyordu. ama yontemini tam olarak
>> bilmiyorum...
>>
>>
>> On 2/26/08, Deniz Dizman <deniz.dizman_at_gmail.com> wrote:
>> > self.location="#hede" dediginiz zaman, ayni sayfada kalirsiniz, ancak URL
>> > degismis olur.
>> > Ornegin www.hodo.com/index.php desiniz ve yukardaki kodu yazdiniz,o zaman
>> > www.hodo.com/index.php#hede olur ama ayni sayfada kalirsiniz reload da
>> > etmez.
>> > basindaki # isareti buradaki kilit nokta :)
>> >
>> >
>> >
>> > 2008/2/25 Anıl KARADAĞ <anil.karadag_at_gmail.com>:
>> >
>> > >
>> > > Ajax ile sunucuda islemler yapar sonucunu sayfa postback olmadan
>> > > yayinlariz. Url degisimi demek sayfanin yeniden yuklenmesi (aynı
>> > > sayfaysa) demektir. Ajax ile gittigin url arka planda kalir,
>> > > goruntulenmez.
>> > >
>> > > facebooknun bu degisimi ajaxla yaptigina emin misin? sayfayi hic
>> > > incelemedigimden bahsettigin seyi gormedim.
>> > >
>> > > Pzt, 2008-02-25 tarihinde 15:09 +0200 saatinde, Nuri Akman yazdı:
>> > > > Arkadaşlar,
>> > > >
>> > > > Haırladığım sayfada resimler üzerinde ileri / geri hareket butonlarını
>> > > > kullanarak resim galerisi hazırladım.
>> > > >
>> > > > Sayfa HIZLI çalışsın düşüncesiyle resim çağırmayı AJAX ile hallettim
>> > > >
>> > > > Tabi ben bunu ajax ile yaparken URL değişmiyor :(
>> > > >
>> > > > Halbuki, facebook'taki izlenimim bunun yapılabildiği yönünde.
>> > > >
>> > > > Bu konuyu nasıl yapabilirim acaba?
>> > > >
>> > > > Selamlar,
>> > > > Nuri AKMAN
>> > > >
>> > > > _______________________________________________
>> > > > Linux-programlama mailing list
>> > > > Linux-programlama_at_liste.linux.org.tr
>> > > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>> > >
>> > > _______________________________________________
>> > > Linux-programlama mailing list
>> > > Linux-programlama_at_liste.linux.org.tr
>> > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>> > >
>> >
>> >
>> >
>> > --
>> > dendiz
>> > http://dendiz.blogspot.com
>> >
>> _______________________________________________
>> Linux-programlama mailing list
>> Linux-programlama_at_liste.linux.org.tr
>> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>>
>>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Tue 26 Feb 2008 - 10:49:59 EET
![]()