51
Drupal и SEO Москва, 2011, DrupalConf

Kostin drupalconf-2011-presentation

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Kostin drupalconf-2011-presentation

Drupal и SEOМосква, 2011, DrupalConf

Page 2: Kostin drupalconf-2011-presentation

Генеральный спонсор и организатор конференции DrupalConf 2011

При поддержке:

Page 3: Kostin drupalconf-2011-presentation

Спонсоры

Информационные спонсоры

Сайт конференции

Page 4: Kostin drupalconf-2011-presentation
Page 5: Kostin drupalconf-2011-presentation

Начнём с SEOПотерпите немного

Page 6: Kostin drupalconf-2011-presentation

От чего вчера зависели позиции сайта в поисковых системах?От магии и кармы оптимизатора действующих алгоритмов ранжирования популярных поисковых систем.

От количества арендованных ссылок различных внешних факторов.

От портянок с большим количеством вхождений качественного контента.

От того, насколько давно вы пришли в конкурентную тематику авторитетности сайта по критериям поисковых систем.

Page 7: Kostin drupalconf-2011-presentation

Что изменилось сегодня и что изменится завтра?Прежние факторы сохранятся (и плавно скорректируются), но к ним добавятся новые:

• Позиции в выдаче перестанут быть единственной целью владельцев сайтов (уже сейчас многие хотят трафика и оплаты по CPC, а некоторые даже согласны на CPA).

• Все начнут измерять конверсию.

• В игру вступят (и уже вступили) поведенческие факторы ранжирования.

Page 8: Kostin drupalconf-2011-presentation

Что ещё за поведенческие факторы?Поисковые системы следят могут следить за удовлетворённостью пользователей. Но как?

• Замер CTR сайта в выдаче.

• Данные из тулбаров.

• Анализ возвратов к поиску.

• Точный трекинг по собственнымсервисам (DNS, Метрика/Analytics,контекстная реклама), на вашеми на чужих сайтах и т.д.

Page 9: Kostin drupalconf-2011-presentation

Как это всё отражается на SEO?

• Поисковики пока не делают резких движений (ссылки по-прежнему решают).

• Появляется поведенческий фрод (его будет ещё больше), впрочем, его готовы фильтровать.

• Количество факторов ранжирования растёт, а удельный вес каждого из них снижается.

• Поиск становится контекстным (региональное дробление, «колдунщики», сниппеты и пр.).

• Запросы удлиняются, НЧ в почёте.

Page 10: Kostin drupalconf-2011-presentation

Что же делать?

Делайте удобные, быстрые и полезные сайты для людей (и делайте их лучше, чем конкуренты).

— Ваш Капитан Очевидность

Page 11: Kostin drupalconf-2011-presentation

Чуть менее очевидные советы

• Делайте узкотематические или региональные сайты (чтоб не связываться с конкурентами).

• Учитесь у лидеров в своей тематике: регулярно посещайте топ выдачи, смотрите на чужие сайты глазами пользователя (читайте их статьи, заказывайте их товары), воспроизводите удачные решения, но не повторяйте ошибки.

• Магазинам: обеспечивайте лучшую цену.

Page 12: Kostin drupalconf-2011-presentation

Про DrupalКонкретные решения

для пользователейи разработчиков

Page 13: Kostin drupalconf-2011-presentation

Вёрстка

• Если возможно, то контент в коде надо располагать раньше остальных регионов.

• $node->title оборачивать в <h1>, в контенте все заголовки оборачивать в <h2>, <h3> и далее.

• Пытаться делать код валидным и разводить в нём меньше мусора и обёрток, минимизировать количество различных шаблонов.

• Отдавать основной контент без AJAX`а.

• Никакого клоакинга!

Page 14: Kostin drupalconf-2011-presentation

Микроформаты (и Rich snippets)

• Используйте микроформаты (в теме или через API), часть разметки уже добавляет сам D7.

• Про hCard знают Google и Яндекс.

• Google ещё знает про hReview, hCalendar, RDFa разметке видео (превью в выдаче), Яндекс тоже присматривается (в Яндекс.Авто).

• Разработчикам следует почитать: http://goo.gl/tr6wC и http://goo.gl/4wLlP

Page 15: Kostin drupalconf-2011-presentation
Page 16: Kostin drupalconf-2011-presentation

Заголовки страниц (title)

• Отображаются в выдаче, влияют не только на ранжирование, но и на CTR.

• В title должны входить целевые запросы (и поближе к началу заголовка).

• Заголовок должен быть конкретным, честным и мотивировать пользователя к действию.

• Лучше, если title не будет на 100% совпадать с $node->title.

• Длина — до 75 символов.

Page 17: Kostin drupalconf-2011-presentation

Автоматизация формирования заголовков страниц (title)http://drupal.org/project/page_title (D6, D7b)

Добавляет отдельное поле на форму создания/редактирования ноды для задания title — это все знают.

Но ещё модуль умеет строить title из token`ов (вместо или в добавок к явно заданному значению), в том числе на основе CCK (для D7 нужен модуль http://drupal.org/project/entity, создающий token`ы для CCK-полей).

Page 18: Kostin drupalconf-2011-presentation

Пример удачного заголовка страницы (title)Можно (нужно для больших сайтов) автоматически создавать примерно такие заголовки:

Купить смартфон HTC Desire S за 17900 руб. с бесплатной доставкой

По примерно таким шаблонам:

Купить [term:description] [node:field-brand] [node:field-model] за [node:field-retailprice] руб. с бесплатной доставкой

Page 19: Kostin drupalconf-2011-presentation

Мета-теги (description)

Google показывает description (или его часть) в сниппете поисковой выдачи. Яндекс тоже показывает, но только если не найдёт более подходящего фрагмента в тексте страницы под конкретный поисковый запрос.

Рекомендуемая длина description — 150 символов.

Лучше делать description уникальным.

Магазинам: описывайте основные характеристики товаров, условия доставки, срок и тип гарантии.

Page 20: Kostin drupalconf-2011-presentation

Мета-теги (keywords и другие)

Мета-тег keywords поисковикам не интересен, используйте для своих нужд.

Но есть полезные мета-теги, про которые все забывают: постоянный адрес страницы (canonical), geo-теги.

Page 21: Kostin drupalconf-2011-presentation

Мета-теги для D6

http://drupal.org/project/nodewords (D6, D7)

Хорошо настраивается, предоставляет средства автоматизации (например, ключевые слова ноды можно заполнять связанными терминами таксономии).

Для D7 будет http://drupal.org/project/metatags (от того же автора), но пока модуля нет (на drupal.org по этому поводу уже развели флейм). Там будет поддержка token`ов (Tokens в зависимостях).

Page 22: Kostin drupalconf-2011-presentation

Мета-теги для D7

http://drupal.org/project/metatags_quick (D6, D7)

Добавляют тип CCK-поля, на основе которого можно создать любые мета-теги (keywords и description создаются при инсталляции) и добавить получившиеся поля к любым типам материалов и к словарям таксономии.

Отдельно можно задать мета-теги для главной страницы.

Нет никакой автоматизации.

Page 23: Kostin drupalconf-2011-presentation

Адреса страниц (url`ы)

Активно используются поисковыми системами (вхождение запроса в url выделяется в выдаче).

Помогут в навигации вам и продвинутым пользователя, используются системами статистики для кластеризации сайта.

Являются частью UI для пользователей (разработчики браузеров это заметили: Opera прячет GET-параметры, для Firefox есть эдд-он Locationbar² и пр.).

Page 24: Kostin drupalconf-2011-presentation

Автоматическое формирование адресов страниц (url`ов)http://drupal.org/project/pathauto (D6, D7b)

В D7 работает вместе с хорошим модулем http://drupal.org/project/transliteration (D6, D7a)

Умеет строить url`ы для материалов (отдельно по типам) и терминов таксономии (отдельно по словарям) с использованием token`ов (уже видели на примере title какие это даёт возможности).

Page 25: Kostin drupalconf-2011-presentation

Правильный транслит по версии поисковых системЯндекс понимает всевозможные варианты транслита (в том числе, и по ГОСТу — умница).

Googlе понимает url`ы переведённые на английский и свой особый транслит.

В модуле Transliteration надо править файл ./data/x04.php (для Google).

Таблица транслитерации, понятнаякак Google, так и Яндексу:http://goo.gl/pcmh1

Page 26: Kostin drupalconf-2011-presentation

Замена url`ов в контенте на новые или абсолютныеhttp://drupal.org/project/pathologic (D6, D7)

Позволяет создать фильтр контента, заменяющий url`ы ссылок и src изображений и embed-объектов с относительных на абсолютные.

Умеет также заменять домен в уже заданных абсолютных url`ах в контенте.

Документация: http://goo.gl/HlfiX

Page 27: Kostin drupalconf-2011-presentation

Предоставьте «хлебные крошки» (breadcrumbs) для навигацииhttp://drupal.org/project/nodehierarchy (D6, D7d)

Умеет связывать ноды в иерархию родитель/потомок и на основании этих связей строить хлебные крошки, url`ы и меню.

http://drupal.org/project/custom_breadcrumbs (D6, D7a)

Умеет строить хлебные крошки на основании типа ноды и текущего пути (path), соответственно, эффективно взаимодействует с Path Auto.

Page 28: Kostin drupalconf-2011-presentation

Текущие варианты сниппетов Яндекса и Google

Page 29: Kostin drupalconf-2011-presentation

Боремся с дублями: редиректы

http://drupal.org/project/globalredirect (D6, D7)

Устанавливает постоянный (301-й) редирект с машинного адреса (node/N или ?q= node/N) на ЧПУ-алиас, если последний задан.

Редиректит с адресов со слешем на конце на адреса без слеша.

Редиректит с /node на / (исключает дубли главной страницы).

Page 30: Kostin drupalconf-2011-presentation

Боремся с дублями: зоны индексации в robots.txthttp://drupal.org/project/robotstxt (D6, D7)

Разрешает управлять содержанием robots.txt прямо через панель администрирования (полезно для мультисайтинга, иначе лучше отдавать статический файл веб-сервером).

Рекомендация: закрываем от индексации все системные директории, а также /node/* (но только если нормальное работают CleanURLs).

Page 31: Kostin drupalconf-2011-presentation

Чего ещё написать в robots.txt?

• Указать ссылку на XML-карту.

• Указать основное зеркало для Яндекса (директива Host).

• Задать задержку между запросами от поискового робота (директива Crawl-delay), исходя из производительности сайта.

• Оставить все Disallow предложенные по умолчанию.

Page 32: Kostin drupalconf-2011-presentation

Основное зеркало сайта

Если Яндекс его уже выбрал, то лучше не меняйте. Везде используйте ту версию, что является основным зеркалом.

Если сайт новый, то лучше сделать без www.

Пропишите Host без www в robots.txt, установите 301-й редирект (на уровне веб-сервера, нечего мучить PHP) с www на non-www, добавьте сайт на индексацию сразу с url`ом без www, позаботьтесь о том, чтобы первые внешние ссылки были без www.

Page 33: Kostin drupalconf-2011-presentation

C www на non-www (в nginx)

if ($host ~* www\.(.*)) {

set $non_www $1;

rewrite ^(.*)$ http://$non_www$1 permanent;

}

Срочно уберите код со слайда!Все варианты есть в статье:http://goo.gl/tpN6q

Page 34: Kostin drupalconf-2011-presentation

Карта сайта для поисковых роботов (XML) и людейhttp://drupal.org/project/xmlsitemap (D6b, D7b)

Модуль всё делает как надо. Но приоритет страниц и частоту обновления выставляйте адекватно предполагаемому мнению поисковых систем.

Добавьте карту в панели веб-мастеров.

Пропишите ссылку на неё в robots.txt.

Карту для людей можно сделать с помощью Views.

Page 35: Kostin drupalconf-2011-presentation

Внутренний поиск по сайту (необходим интернет магазинам)http://drupal.org/project/search_by_page (D6, D7)

Позволяет настроить индексацию, исключив из неё всё, что не следует показывать пользователям (по типу материалов).

Индексирует отрендеренные страницы (включая CCK и пр.), поэтому индексирует не только ноды.

Можно использовать решения от Google и Яндекса или Sphinx (для D6) для повышения качества поиска.

Page 36: Kostin drupalconf-2011-presentation

Страницы ошибок 404 и 503

http://drupal.org/project/search404 (D6, D7)

Показывает поисковую форму на 404-ой странице. Интегрирован с Search by Page.

На несуществующей странице отдавать надо http-код 404, а когда сайт не работает (maintenance mode) — 503-й код.

Drupal так и делает (но 500-й при упавшей базе), напишите нормальные тексты для страниц-ошибок, узнайте какие коды отдаёт хостер при багах.

Page 37: Kostin drupalconf-2011-presentation

Коррекция исходящих ссылок

http://drupal.org/project/extlink (D6, D7)

Метит почтовые и внешние ссылки пиктограммами, открывает ссылки в новом окне (не валидно), добавляет pop-up с предупреждением о переходе на внешний сайт (как ВКонтакте). Аккуратнее с этим!

http://drupal.org/project/links_nofollow (D6b, D7b)

Добавляет nofollow к служебным внутренним ссылкам (например, на форму комментирования).

Page 38: Kostin drupalconf-2011-presentation

Суровая коррекция исходящих ссылок: для тех, кто их продаётhttp://drupal.org/project/noindex_external_links (D6, D7)

Умеет закрывать с помощью nofollow и noindex (валидным кодом) все внешние ссылки.

Можно задать чёрный и белый списки для внешних доменов.

Модуль разработал Влад Савицкий (http://drupalcookbook.ru), спонсируйте и просите версию для Drupal 7.

Page 39: Kostin drupalconf-2011-presentation

Внутренняя перелинковка (очень полезна)http://drupal.org/project/customfilter (D6, D7)

Позволяет создать фильтр контента и включить в него несколько правил, каждое из которых представляет собой замену по регулярному выражению (можно менять первое точное вхождение запроса на внутреннюю ссылку).

Для создаваемого фильтра можнонастроить кеширование.

Документация: http://goo.gl/K35V2

Page 40: Kostin drupalconf-2011-presentation

Верификация в панелях веб-мастеров и прочих сервисахhttp://drupal.org/project/site_verify (D6, D7)

Позволяет загрузить файл или вывести в код главной страницы мета-тег для подтверждения доступа к сайту.

Надо добавиться, как минимум, в панели:

• http://webmaster.yandex.ru

• http://google.com/webmasters/tools

Page 41: Kostin drupalconf-2011-presentation

Пинг поисковых краулеров

http://drupal.org/project/multiping (D6)

Умеет пинговать по планировщику и только определенные ноды (по типу и пр.). Пинг ЯППБ можно добавить через настройки.

http://drupal.org/project/simpleping (D7)

Сугубо временное решение. Пингуетпри создании и обновлении нодытолько Яндекс, Google и Pingomatic.

Page 42: Kostin drupalconf-2011-presentation

Привлечение внешней ссылочной массы и трафика (трекбэки)http://drupal.org/project/trackback (D6, D7)

Позволяет управлять трекбэками: как входящими, так и исходящими.

Page 43: Kostin drupalconf-2011-presentation

Привлечение внешней ссылочной массы и трафика (социалки)http://drupal.org/project/service_links (D6, D7d)

Добавляет к нодам ссылки для расшаривания страниц посетителями в социальных сервисах.

http://drupal.org/project/tweetmeme (D6, D7)

По-своему достойный виджет со счётчиком.

Или вручную создайте блок с виджетом от http://api.yandex.ru/share, также хорош своей статистикой сервис http://www.addthis.com (сделали печатную версию?)

Page 44: Kostin drupalconf-2011-presentation

Про контент

Регулярно размещайте уникальный, интересный для аудитории и актуальный контент первыми.

Да, целевые запросы полезно включать в title, h1 и в основной контент (поближе к началу), но пора навсегда забыть о точных вхождениях, тегах <b> и «тошноте». И пишите грамотно (без ошибок).

Сопровождайте свой сайт в социалках.

Всё делается в первую очередь для людей, и только потом для поисковых систем. Да?

Page 45: Kostin drupalconf-2011-presentation

Анализируйте аудиторию

Метрика умеет показывать карту кликов (heatmap), траектории перемещения трафика по сайту и недавно получила крутой «Вебвизор» (заказчики точно ему обрадуются). Также Метрика фиксирует переходы по родной кнопке «Поделиться». И мониторит сайт. GA тоже перманентно обновляют.

Коды счётчиков можно разместить в любом блоке (они асинхронные).

Полученную статистику надо интерпретировать.

Page 46: Kostin drupalconf-2011-presentation

Максимально ускорьте сайт и сделайте его надёжнымПро ускорение и highload — расскажут другие докладчики.

Ещё в старом алгоритме Google скорость была официально объявленным фактором ранжирования, в Panda вес этого фактора увеличился.

Яндекс тоже за то, чтобы его пользователи меньше ожидали загрузки сайта.

Выбирайте хорошего хостера (того, кто быстро решает проблемы).

Page 47: Kostin drupalconf-2011-presentation

Зачем SEO разработчику

Page 48: Kostin drupalconf-2011-presentation

Так зачем же?

Оптимизированные сайты легче продавать заказчику (а можно их продавать и дороже).

SEO компании, не занимающиеся разработкой (да, такие всё-таки есть), будут вас охотно рекомендовать и приводить вам своих клиентов.

Внутренняя оптимизация воистину «белая», она делает контент общедоступным, а интернет —современным.

Page 49: Kostin drupalconf-2011-presentation

Спасибо. Вопросы?

Про «Drupal и SEO» на DrupalConf 2011 рассказывал Алексей Костин.

[email protected]

@kostin

Page 50: Kostin drupalconf-2011-presentation

Генеральный спонсор и организатор конференции DrupalConf 2011

При поддержке:

Page 51: Kostin drupalconf-2011-presentation

Спонсоры

Информационные спонсоры

Сайт конференции