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@yaramazca.com <serkan@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@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@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@liste.linux.org.tr > > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > > > > _______________________________________________ > > Linux-programlama mailing list > > Linux-programlama@liste.linux.org.tr > > http://liste.linux.org.tr/mailman/listinfo/linux-programlama > > > > > > -- > dendiz > http://dendiz.blogspot.com > _______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlama_______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlama
_______________________________________________ Linux-programlama mailing list Linux-programlama@liste.linux.org.tr http://liste.linux.org.tr/mailman/listinfo/linux-programlama
No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.516 / Virus Database: 269.21.1/1298 - Release Date: 25.02.2008 20:45
_______________________________________________
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 - 11:01:13 EET