views:

129

answers:

2

Ok, I'm using the term "Progressive Enhancement" kind of loosely here but basically I have a Flash-based website that supports deep linking and loads content dynamically - what I'd like to do is provide alternate content (text) for those either not having Flash and for search engine bots. So, for a user with flash they would navigate to:

http://www.samplesite.com/#specific_page

and they would see a flash site that would navigate to the "specific_page." Those without flash would see the "specific_page" rendered in text in the alternative content section.

Basically, I would use php/mysql to create a backend to handle all of this since the swf is also using dynamic data. The question is, does something out there that does this already exist?

+1  A: 

Well, according to OSFlash (the open source flash people) both CakePHP and PHPWCMS can do what you need, although from a first glance at their sites' feature list, it is not entirely obvious.

Let us know if they do work!

defmeta
I'll check both of those out - thanks so much!
onekidney
+1  A: 

There's an inherent problem with what you're trying to achieve.

The URL hash (or anchor) is client-side only - that token is not sent to the server. This means the only way (that I know of) to load the content you need for example.com/#some_page is to use AJAX, which can read the hash and then request the page-specific data from the server.

Done? No. Because this will kill search engine bots. A possible solution is to have example.com/some_page serve the same content (in fact, that could easily be a REST service that you've already made to return the AJAX or Flash-requested content), and provide a sitemap.xml which indexes those URIs to help out the search engines.

I know of no existing framework that does specifically these tasks, although it certainly seems like one could be made w/o too much trouble.

Peter Bailey
Gaia: http://www.gaiaflashframework.com/ handles SEO in exactly this fashion. I didn't suggest it because I thought the questioner had already built the flash component. Otherwise, Gaia would be a good solution.r
defmeta
Gaia seems to fit the bill! Thanks!
onekidney