Asual

Tuesday,
21 Nov 2006

SEO for SWFAddress

I would like to introduce you to the most interesting feature of the upcoming SWFAddress 1.0. It enables generation of real links that expose the appropriate content to search engines. The magic happens with some interesting URL rewriting and some trivial serverside code. Here is an example how it works for a website located at http://www.domain.com that contains a portfolio section:

SWFAddress uses http://www.domain.com/#/portfolio/. The URL that can get indexed is http://www.domain.com/portfolio/ and therefore it should exist as a link in the HTML code of the page. When someone visits the indexed address the rewriting functionality makes a redirect to the URL that SWFAddress expects. Everything happens transparently for the end used and further navigation through the website correctly changes the Address bar value. The situation is different when the same link is followed by a search engine bot. In this case the address is just rewritten without any redirection to http://www.domain.com/?swfaddress=/portfolio/. The page that handles all this should use a serverside technology in order to generate the appropriate content depending on the "swfaddress" parameter value.

Requests containing GET parameters like http://www.domain.com/#/portfolio/?desc=true&year=2001 are handled similarly. The search engines will index http://www.domain.com/portfolio/?desc=true&year=2001 and the script will expect http://www.domain.com/?swfaddress=/portfolio/&desc=true&year=2001.

The result is a fully indexed Flash website with deep linking support. To see it in action you can try on of the following search queries:

While this approach improves the usability of Flash content over the web, it also requires an additional effort. This means some manual work for static websites and some smart code for dynamic ones. The best case will be a Flash CMS that automates the whole process.

I haven't seen something similar created for Ajax heavy websites although a part of it is documented in the Unique URLs pattern. It will be great for both Flash and Ajax if a technique like this gets adopted and improved over the time.

SWFAddress 1.0 ships tomorrow, stay tuned.

Monday,
23 Oct 2006

SWFAddress - Deep linking for Flash®

I'm glad to introduce you to our new project that aims to improve the way people use Flash websites and applications. It's been a long time since Kevin Lynch outlined the problem and provided some proof of concept code, but two years later there's still no a solid standard solution.

A few weeks ago we started working on a typical Flash website for a fellow photographer and I thought that it will be great if it supported deep linking. I had some JavaScript code that enables such behaviour for Ajax calls and it was fairly easy to connect it to the Flash movie using ExternalInterface. I also extended the SWFObject initialization in order to simplify the usage of the script as much as possible. This is how SWFAddress was born. As of yesterday it's available under the MIT license.

I'll be happy to hear your comments, suggestions and bug reports. My list for the final release include detection of unsupported browsers, improved Safari support and probably a sample that works with the default Flex 2 templates.

Future improvements may include support for query parameters and custom events for specific URLs.

Learn more and download at the SWFAddress homepage.

Projects

Syndication

Blog Search

Blog Categories

Blog posts

Recommended sites