Сделать AJAX SEO дружественным
- Что такое AJAX?
- Проблема 1: SEO проблемы с динамическим контентом AJAX
- Проблема 2: Проблемы с поиском в AJAX
- Проблема 3: Размещение всего контента на одной странице
- Проблема 4: Пауки поисковых систем не читают код JavaScript
- Решение 1. Служите альтернативному контенту
- Решение 2. Использование Hijax - изящная деградация AJAX
- Некоторая сторона история ...
Во многих блогах профессионалы SEO говорят, что AJAX является злом в SEO, точно так же, как Flash *. Но спросите дизайнера / разработчика Web2.0, AJAX настолько классен, что людям он понравится и он останется на вашем сайте, увидев быструю интерактивную визуальную обратную связь без перезагрузки страницы. Давайте посмотрим глубже на возможность сделать SEO и AJAX BFF.
[* Примечание автора: это было изначально написано и размещено в сети 12 декабря 2007 года. С тех пор и сейчас многое изменилось в том, как большинство людей делают AJAX (в основном это jQuery), и как Flash использовал для запуска. Но все же остальная часть сообщения в блоге имеет хорошую информацию, все еще применимую сегодня. ]
Что такое AJAX?
AJAX это термин, придуманный публично Джесси Джеймс Гарретт из AdaptivePath значение: асинхронный JavaScript и XML. Как размещено в Википедии:
AJAX (асинхронный JavaScript и XML), или Ajax, - это метод веб-разработки, используемый для создания интерактивных веб-приложений. Основная цель состоит в том, чтобы сделать веб-страницы более отзывчивыми, обмениваясь небольшими объемами данных с сервером за кулисами, чтобы не приходилось перезагружать всю веб-страницу каждый раз, когда пользователь запрашивает изменение. Это предназначено для повышения интерактивности, скорости, функциональности и удобства использования веб-страницы.
AJAX является асинхронным, поскольку дополнительные данные запрашиваются с сервера и загружаются в фоновом режиме, не влияя на отображение и поведение существующей страницы. JavaScript - это язык сценариев, на котором обычно выполняются вызовы функций AJAX. Данные извлекаются с использованием объекта XMLHttpRequest, который доступен для языков сценариев, работающих в современных браузерах. Однако не требуется, чтобы асинхронный контент форматировался в XML.
AJAX - это кроссплатформенная технология, используемая во многих операционных системах, компьютерных архитектурах и веб-браузерах, поскольку она основана на открытых стандартах, таких как JavaScript и DOM. Существуют бесплатные и открытые реализации подходящих фреймворков и библиотек.
Сохраняя технический язык минимальным, главное заметное преимущество, которое вы получаете при работе с AJAX, - это динамическая загрузка контента на вашу страницу без перезагрузки всей страницы по новому URL. Это дает вам возможность перезагрузить только определенные части страницы, сводя к минимуму нагрузку на ресурсы, кроме того, что это визуально привлекательно для пользователя.
Проблема 1: SEO проблемы с динамическим контентом AJAX
Поисковые системы сканируют веб-сайты с помощью ботов, которые также называются сканерами или пауками. Это не что иное, как программы, которые посещают веб-страницы в Интернете, просматривая все ссылки и далее посещая каждую действительную ссылку, найденную просматриваемой. И контент на странице читается и связывается с просканированным URL.
При таком поведении поисковые системы смогут читать изначально загруженный контент только при загрузке URL-адреса страницы. Любой другой контент, который загружается с помощью AJAX и требует щелчка пользователя или какого-либо другого события, может не читаться поисковыми системами.
Вероятно, хорошим примером сайта AJAX будет Мгновенный поиск домена , Для каждой вводимой буквы загружается новый контент. Он быстро загружается и привлекает людей, так как им не нужно ждать полной перезагрузки страницы. Хотя весь сгенерированный новый контент не может быть прочитан поисковыми системами.
Проблема 2: Проблемы с поиском в AJAX
Поскольку поисковые системы сканируют веб-сайты, просматривая каждую ссылку, найденную на странице, поисковые системы могут не иметь возможности проверять ссылки, переходящие на другие страницы веб-страницы AJAX. Прежде всего, контент AJAX не обязательно должен находиться на другом URL, он будет иметь тот же URL, что и загруженный.
Обычно ссылка на нормальную веб-страницу может выглядеть так:
- <a href=veloperpath/page.html книг> текст для нажатия </a>
А на сайтах с поддержкой AJAX могут быть ссылки в различных формах, таких как:
- <a href=veloperjavascript: functioname(content-parer);oted> текст для нажатия </a>
- <a href=veloper#content-pareruration> текст для нажатия </a>
- <a href=veloperjavascript: void(); реализован онклик = реализованофункция(content-parer);tivation> текст для нажатия </a>
- <a href=uration## onclick=veloperfunctioname(content-parer);veloper> текст для нажатия </a>
Если ваше значение href не является допустимой веб-страницей, оно будет просто игнорироваться поисковыми системами, даже если у вас есть возможность позволить поисковым системам видеть динамически загружаемый контент, он все равно будет находиться на том же URL-адресе, где он должен быть отделен.
Для моего примера, позвольте мне показать вам AJAX Powered Agile Фотогалерея ScriptTiny AJAX SlideShow **. На их демонстрационной странице показан один URL, и этот URL никогда не изменится, когда вы просматриваете другие фотографии или просматриваете другие страницы. Их формат ссылки использует функцию JavaScript прямо в значении href ссылки.
[** Примечание автора. Исходный пример больше не существует, и в домене теперь отображается страница парковки. Хотя предыдущая и следующая кнопки ScriptTiny являются функциями JavaScript, ссылки на миниатюры представляют собой настоящие файлы HTML, которые могут сканировать поисковые системы. ]
Проблема 3: Размещение всего контента на одной странице
Вместо того, чтобы динамически загружать весь контент из серверного языка сценариев или XML-файла, некоторые люди просто размещают весь контент заранее и используют приемы JavaScript для скрытия и отображения текста. Это может решить проблему проблемы 1, упомянутую выше, поскольку нет другого контента для сканирования. И, в некотором смысле, решает проблему проблемы 2, так как нет других ссылок, которые нужно сканировать. Но, даже если это решает эти проблемы, возникает новая проблема фокусировки ключевых слов.
Проверьте сайт популярного Moofx Все их главные страницы находятся на одной странице, и если вы нажмете на панели, контент будет плавно скользить, и, на самом деле, весь контент уже существует и не загружается при каждом нажатии на ссылки на странице. Контент просто скрыт с использованием методов CSS и / или JavaScript. В случае с Moofx это не большая проблема, но на других корпоративных сайтах со страницами различной тематики, которые должны стоять на отдельной странице, этот метод может быть не идеальным, так как различные ключевые слова смешиваются и теряют ключевое слово. сосредоточиться на странице.
Проблема 4: Пауки поисковых систем не читают код JavaScript
В зависимости от того, как ваш AJAX-разработчик создает ваши веб-страницы, они могут создавать контент, написанный на JavaScript, или нет. И, хотя было бы идеально, чтобы JavaScript поддерживал динамически изменяющиеся визуальные компоненты страницы, не идеально, чтобы JavaScript сам писал контент, используя функцию document.write. Насколько это возможно, контент и ссылки на веб-странице должны быть как можно более простым текстом HTML. Поисковые системы просто игнорируют контент, написанный в коде JavaScript ***.
[*** Примечание автора: поскольку этот пост был изначально написан в 2007 году, с тех пор многое изменилось. В 2009 году инженеры Google: Катрин Пробст и Брюс Джонсон объявили предлагаемый безголовый браузер в SMX East 2009 , Поскольку это еще не было реализовано в основном искателе, тем, кто хотел участвовать в тестировании этого, было рекомендовано добавить восклицательный знак после символа фунта в URL-адресах. Как в этом формате: domain.com/folder/file.ext#!ajax-parers, и это будет сигнализировать о запуске безголового браузера. И вы можете видеть, что несколько крупных сайтов применяли это в своих URL, таких как Twitter и Facebook в течение этого года. ]
Решение 1. Служите альтернативному контенту
На одной странице, если AJAX записывает элемент навигации при каждой загрузке страницы и оборачивается в JavaScript, решение может иметь альтернативную навигацию по странице. Например, использование ссылок нижнего колонтитула на странице будет работать.
А для этих альтернативных ссылок они должны приводить к фактическим страницам на их собственных URL-адресах, которые будут загружать тот же контент, что и ссылки в ссылках AJAX.
Таким образом, вы порадуете пользователей визуальной привлекательностью AJAX и по-прежнему предоставляете альтернативную навигацию и контент, который поисковые системы могут читать и индексировать. Где, если людям удастся посетить эти URL, они все равно будут перенаправлены на страницы AJAX.
Решение 2. Использование Hijax - изящная деградация AJAX
Концепция, впервые упомянутая Джереми Кейт из Clear: Left имеет отличную презентацию на этом. Его методика раскрывает конкретные детали того, как AJAX должен быть написан так, чтобы он хорошо деградировал с меньшим количеством браузеров с поддержкой AJAX. Точно так же ведут себя поисковые системы, как браузер с меньшими возможностями. Вот несколько примеров его ненавязчивого примера JavaScript из его презентации:
- Псевдопротокол JavaScript - Ужасно!
<a href=veloperjavascript:window.open('help.html')veloper> контекстная помощь </a> - Бессмысленная ссылка - плохо!
<a href = ”#” onclick = ”window.open ('help.html'); вернуть ложь; »> контекстная помощь </a> - Использование DOM - лучше.
<a href = »help.html» onclick = »window.open (this.getAttribute ('href'))); вернуть ложь; »> контекстная помощь </a> - Нет встроенного JavaScript - лучше!
<a href=otedhelp.htmlнообразие class= двуспальной системе управления> контекстная помощь </a>
Он также говорит об экстернализации JavaScript и CSS-кода. Еще одним важным преимуществом наличия изящно деградирующего сайта AJAX является отсутствие необходимости создавать альтернативный контент. Это просто наличие только одного источника контента, который хорошо ухудшается, когда JavaScript отключен, что в основном ведет себя так, как ведет себя поисковик, как в браузерах с отключенным JavaScript. Один из прекрасных примеров, которые я видел, реализуя дружественный к SEO AJAX с использованием методов Hijax, находится на AjaxOptimize ****.
[**** Примечание автора. Тогда я по какой-то причине был скрыт от связи с этим сайтом в прошлом. Во всяком случае, я буду открыт об этом на этот раз. Я сделал сайт AjaxOptimize и назвал мою технику SEFAJAX. ]
Кредиты изображений: Изображение выше было от Johan Bluezen / SEOMix.fr из его поста в блоге о браузере без головы и настройке Jetty ,
Некоторая сторона история ...
Этот пост является точной копией поста, который я написал для другого агентства в прошлом. Похоже, что это бывшее агентство движется в другом направлении и концентрируется на другой стороне бизнеса онлайн-маркетинга, которую они решили удалить не только из моего блога, но и из всего блога в целом. Так как это все еще хороший источник информации, я возрождаю пост в блоге, являясь его автором, поскольку он уже офлайн уже год.
Сообщение в блоге было отличным ресурсом для многих других людей, и я бы сказал, что оно стало также воротами для моего первого основного выступления, когда бывший инженер Google Ванесса Фокс которая наиболее известна своей работой с инструментами Google для веб-мастеров, связанной с моей записью в качестве ресурса, когда раньше существовали Джейн и Робот. (Джейн и Робот были старым веб-сайтом Ванессы Фокс вместе с менеджером программ Microsoft Натан Баггиа ). Когда я встретил Ванессу в PubCon в 2009 году, она спросила меня, хочу ли я выступить на сессии в O'Reilly Found, конференция, которая не прошла , но привели меня в SMX в том же году и был на панель сессий на CSS, AJAX и Web 2.0 технологии и как сделать SEO. Это было мое первое выступление на крупной конференции по SEO, и я почти не смог этого сделать, поскольку я буквально опоздал и испытал головокружение, поскольку ровно за день до SMX я только что прилетел с Филиппин после выступая на SEMCon в Метро Манила , Придя в конце конференции, у меня оставалось 7 минут, чтобы выполнить свою часть. Я приложил все усилия, чтобы извлечь из этого максимум пользы, но до сих пор чувствую себя плохо, опаздывая на эту сессию.
- Бендж Арриола
Что такое AJAX?Что такое AJAX?