Кто-нибудь знает фреймворк php, который будет обрабатывать прогрессивное улучшение для Flash/Flex контента?
Хорошо, я использую термин "прогрессивное улучшение" здесь довольно свободно, но в основном у меня есть веб-сайт на основе Flash, который поддерживает глубокие ссылки и динамически загружает контент - я хотел бы предоставить альтернативный контент (текст) для этих либо не имея Flash, но и для поисковых роботов. Таким образом, для пользователя с Flash они должны перейти к:
http://www.samplesite.com/#specific_page
и они увидят флэш-сайт, который будет переходить кspecific_page
"Те, у кого нет вспышки, увидят"specific_page
"отображается в тексте в разделе альтернативного контента.
По сути, я бы использовал php/mysql для создания серверной части для обработки всего этого, поскольку swf также использует динамические данные. Вопрос в том, существует ли что-то, что уже существует?
3 ответа
Существует врожденная проблема с тем, чего вы пытаетесь достичь.
Хеш (или привязка) URL-адреса только на стороне клиента - этот токен не отправляется на сервер. Это означает, что единственный способ (который я знаю) загрузить контент, который вам нужен для example.com/#some_page, - это использовать AJAX, который может прочитать хеш и затем запросить данные, специфичные для страницы, с сервера.
Готово? Нет. Потому что это убьет поисковых роботов. Возможное решение состоит в том, чтобы example.com/some_page обслуживал тот же контент (на самом деле, это может быть сервис REST, который вы уже сделали для возврата содержимого, запрошенного AJAX или Flash), и предоставить файл sitemap.xml, который индексирует эти URI, чтобы помочь поисковым системам.
Я не знаю ни одной существующей среды, которая бы выполняла именно эти задачи, хотя кажется, что можно было бы сделать это без особых проблем.
Если вы используете SWFAddress с Flash/Flex, вы можете прочитать URL-адрес, а затем разбить его на массив и сделать так, как хотите:
SWFAddress.addEventListener ( SWFAddressEvent.CHANGE, onChange );
private function onChange ( e : SWFAddressEvent ) : void
{
var ar : Array = SWFAddress.getValue ().split ( '/' );
trace ( 'Array : ', ar );
}
Что касается вещей, не относящихся к флэш-памяти, если вы используете воспламенитель кода, вы сможете получить URL-адрес и преобразовать его в массив.
Другой альтернативой является использование FAUST. Что вы можете сделать с FAUST, так это заставить PHP отобразить HMTL в качестве допустимой разметки, а затем FAUST извлечет HTML и передаст его во Flash через Flash Vars в виде XML. Этот метод делает поисковые машины по-настоящему счастливыми (см. http://www.bartoncreek.com/).
Поэтому, чтобы ответить на ваш вопрос, есть инструменты, которые помогут вам достичь ваших целей.