Implementing ajax crawling

68 views
Skip to first unread message

Adam Stephen Docherty

unread,
Oct 6, 2012, 10:58:00 PM10/6/12
to joomla-de...@googlegroups.com
Hello there, hope everyone is having a great weekend!

I have a component I am working on that is pretty much complete ajax although I have implemented a html layer for the search engines. Recently I came across the Google Ajax Crawling specification and I would like to implement this to the component I am working on. You can learn more about this here:

https://developers.google.com/webmasters/ajax-crawling/docs/specification

As you will note, google groups actually implements this (just look up in the browsers URL bar and you will see the #! characters).

So what basically happens is that a url like this: 

#!key1=value1&key2=value2

will be called as this by the search engine (I believe google and bing both implement the hashbang (Ajax Crawling Spec):

?_escaped_fragment_=key1=value1%26key2=value2

So basically what I am wondering is, has anyone worked with implementing this and if so do they have any advise about potential pitfalls and such. I believe it will requiere some foolery in the router file to achieve - well that is where I think I will approach it!

Anyways TIA for any advise you can give.

Regards,

Adam




piotr_cz

unread,
Oct 8, 2012, 6:17:49 AM10/8/12
to Joomla! General Development
Hi,
I've implemented such solution in a project and there are few
extensions that are helping out with Ajax.

The 'problem' is that Joomla is backend-based universal CMS and lot's
of things are interconnected.
Loading the articles into DOM container is easy as well as components/
modules. The problem comes when you want to have whole page up to date
(client <> server).

Modules and templates/ template styles are dependent on menu items,
some things may change on other criteria (online users/ stats/
webservices), menus may be loaded just for 1 level and so on.

This is doable in a specific project, but I'm not sure how one could
ajaxify whole Joomla.

BTW: take a look at html5 pushstate (https://developer.mozilla.org/en-
US/docs/DOM/Manipulating_the_browser_history). I've been successful
with an experiment where website is handled by client-side router, but
at the same time all pages are accessible directly or when Javascript
is disabled (backend routing).


On Oct 7, 4:58 am, Adam Stephen Docherty <adam.doche...@gmail.com>
wrote:
> Hello there, hope everyone is having a great weekend!
>
> I have a component I am working on that is pretty much complete ajax
> although I have implemented a html layer for the search engines. Recently I
> came across the Google Ajax Crawling specification and I would like to
> implement this to the component I am working on. You can learn more about
> this here:
>
> https://developers.google.com/webmasters/ajax-crawling/docs/specifica...
>
> As you will note, google groups actually implements this (just look up in
> the browsers URL bar and you will see the #! characters).
>
> So what basically happens is that a url like this:
>
> *#!key1=value1&key2=value2
> *
> will be called as this by the search engine (I believe google and bing both
> implement the hashbang (Ajax Crawling Spec):
>
> *?_escaped_fragment_=key1=value1%26key2=value2*
Reply all
Reply to author
Forward
0 new messages