mar 7th, 2010
Jak nauczyć Google indeksować witrynę Ajax?
Google wprowadziło nowy mechanizm pozwalający indeksować treści witryny zbudowane za pomocą Ajax-u.
1. Potwierdzenie,że witryna Ajax obsługuje mechanizm indeksowania treści Ajax
W pierwszym kroku wskazujemy robotowi Google, że witryna wspiera mechanizm Google indeksowania treści Ajax. Robimy to poprzez umieszczenie w URL podstron witryny tokenu „#!”. Zamieniamy w adresach url znak „#” na „#!”.
Przykład dla witryny Ajax
Jeżeli w naszej witrynie Ajax mamy adres „www.strona.pl/#podstrona” powinien zostać on przekształcony na „www.strona.pl/#!podstrona”.
W ten sposób wskażemy Google, że ten adres może zostać zindeksowany.
2. Dostarczenie wersji HTML treści
W drugim kroku dostarczamy robotowi Google wersję HTML poszczególnych podstron.
W domyślnych ustawieniach robot miałby problem z zapytywaniem o adresy URL zawierające znak „#”. Z drugiej strony serwer witryny miałby problem z rozpoznaniem sytuacji, w których ma przekazać robotowi wersję HTML podstrony (uwzględniającą również wszelkie zdarzenia z wykorzystaniem zmiennych dynamicznych).
Z tego względu w celu pobrania określonej treści robot będzie zapytywał server witryny Ajax o zmodyfikowany adres tej treści.
Przykład dla witryny Ajax
Przy adresie podstrony „www.strona.pl/#!podstrona” zostanie on przekształcony przez robota na „www.strona.pl/?_escaped_fragment_=podstrona”
3. Indeksowanie treści bez znaku „#”
W przypadku, kiedy w obrębie witryny mamy adresy URL, które nie zawierają znaku „#”. Jeżeli chcemy, aby podstrony były indeksowane pod swoim oryginalnym adresem, a nie tym zmodyfikowanym przez robota (czyli tym zawierającym „?_escaped_fragment_”) powinniśmy zawrzeć w headerze podstrony tag:
<meta name="fragment" content="!">
Opis indeksowania treści Ajax w Centrum Pomocy Google
- Opis mechanizmu Google indeksowania treści Ajax można znaleźć w Centrum Pomocy Google.
- Wyjaśnienie poszczególnych pojęć związanych z mechanizmem można znaleźć w pełnej specyfikacji Google jak również w przykładach Google.
- Odpowiedzi na najważniejsze pytanie związane z implementacją mechanizmu zostały przedstawione w sekcji FAQ.
W przypadku, kiedy uznasz strone za przydatna dodaj na swojej stronie link do niej.
Po prostu skopiuj i wklej link podany nizej (Ctrl+C to copy)
Wyglad linku po wklejeniu na stronie: Jak nauczyć Google indeksować witrynę Ajax?
Dodaj link do:
| | | Y! MyWeb | +Google
Jeżeli w naszej witrynie Ajax mamy adres “www.strona.pl/#podstrona” powinien zostać on przekształcony na “www.strona.pl/#podstrona”
Czym różnią się te dwa adresy powyżej ?
Dzięki za uwagę! Wkradła się literówka.
Ciekawe. Tylko po co ten wykrzyknik?
Przy adresie podstrony “www.strona.pl/#podstrona” zostanie on przekształcony przez robota na “www.strona.pl/?_escaped_fragment_=podstrona”
a nie powinno być “www.strona.pl/#!podstrona” ?
Tak, to dokładnie ten sam błąd. Ktoś już implementował te rozwiązanie?
Ciekawe materiały
Witaj Mariuszu – zaimplementowaliśmy testowo to rozwiązanie pod adresem http://www.weblocus.pl/testy/ – całość została poprawnie zaindeksowana przez Google.
Fantastycznie! Możesz podać więcej informacji na temat implementacji?
witam, dzięki za artykuł, przydał mi się przy mojej stronce:)
Witam,
ciekawi mnie jedna rzecz. Tworzymy w indexie wersję strony działającą na ajaxie i taką by wyświetlała to samo na linkach ?_escaped_fragment_, lecz czy przy wersji drugiej, podczas jej wyświetlania musimy zamienić linki na ?_escaped_fragment_=test czy mają pozostać #!test.
Opisując dokładniej:
– użytkownik widzi link #!test
– google bot widzi link #!test, przerabia go na ?_escaped_fragment_=test, odwiedza przerobiony link i widzi kolejne linki, lecz w jakiej formie? Nadal #! czy już przerobione?
Pozdrawiam
Witam,
mam problem z indeksowaniem strony w Ajax
a mianowicie chodzi o taki przypadek http://profesjonalneszkolenie.pl/
google nie chce zindeksować podstron tej strony, widzi tylko główną witrynę.
Próbowałem już różnych sposobów i w indeksie nadal tylko strona główna
Plik index.html zawiera tylko opisy meta oraz link do podstron, a same podstrony są w katalogu „pages” bez znaczników html,head,body
Spróbowałem też dostarczyć google wersji html http://profesjonalneszkolenie.pl/o-mnie.html
I zrobiłem przekierowanie 301 na http://profesjonalneszkolenie.pl/#!O-mnie.html
ale nadal nie pomogło.
Może ktoś doradzić co zrobić?
pozdrawiam