Сергей Мирошниченко - seo-friendly data migration

20
Lviv Euro DrupalCamp 2014 Lviv Euro DrupalCamp 2014 SEO-оптимизированная SEO-оптимизированная миграция данных в Drupal миграция данных в Drupal Sergey Miroshnichenko Developer Adyax [email protected]

Upload: ledc-2014

Post on 14-Jun-2015

81 views

Category:

Internet


0 download

DESCRIPTION

Доклад о SEO-оптмизированной миграции данных в Drupal

TRANSCRIPT

Page 1: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

SEO-оптимизированная SEO-оптимизированная миграция данных в Drupalмиграция данных в Drupal

Sergey [email protected]

Page 2: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

http://site.com/en

http://site.com/fr

http://site.com/ua

http://en.m.site.comhttp://fr.m.site.comhttp://ua.m.site.com

http://en.site.comhttp://fr.site.comhttp://ua.site.com

Page 3: Сергей Мирошниченко - SEO-friendly data migration

План действий1. Анализ структуры данных и ЧПУ

2. Анализ источников трафика

3. Создание новой структуры

4. Подготовка данных

5. Миграция данных

6. Настройка переадресации

7. Внутренняя SEO-оптимизация

8. Запуск

9. Анализ последствий

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Page 4: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Анализ структуры данных и ЧПУ

http://site.com/en?c=front&m=brand&bid=767&d=true

Расширенная версияID моделиИмя модели

Текущий язык

Имя контроллера

Page 5: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

en?pid=758

ua?c=search&query=apple

en?c=category&id=77

fr?c=author&uid=33

0 1000 2000 3000 4000 5000 6000 7000 8000 9000

3000

5000

8000

3000

Top pages

External links

Hits

Анализ источников трафика

Page 6: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Создание новой структурыid brand model description details

Integer Integer text Longtext Serialized

$node->field_source_id$node->field_old_url

$taxonomy_term->field_source_id$taxonomy_term->field_old_url

$field_collection->source_id$field_collection->field_old_url

Page 7: Сергей Мирошниченко - SEO-friendly data migration

Подготовка данных

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

1. Установка и настройка инструментов миграции

2. Настройка обработки полей, содержащих html (внешние и внутренние ссылки,

изображения, преобразование html-тегов)

3. Настройка обработки полей мета-тегов

4. Настройка переноса файлов

Page 8: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Миграция данных

Page 9: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресации

Nginx Apache DrupalVarnish

HTTP accelerator HTTP proxy HTTP back end server Application

Доступные решения

Page 10: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииСредства сервера

1. www / non-www

2. Неиспользуемые субдомены

3. Статика

Page 11: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииСредства Drupal

1. Для главной страницы — версия сайта и языковый субдомен.

Решение: Средства сервера или JavaScript (User-agent, Cookies).

2. Для внутренних страниц — адрес, версия сайта и субдомен.

Решение: Модуль Redirect и JavaScript.

Page 12: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииМодуль Redirect (https://www.drupal.org/project/redirect)

1. «Destination language» field

2. Operations hooks: hook_redirect_insert() hook_redirect_update() hook_redirect_delete()

3. Processing hooks: hook_redirect_load() hook_redirect_alter()

Page 13: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииМиграция адресов

SourceBase url, query params,

language

DestinationSystem path, query params,

fragment, language

Page 14: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииПереадресация «на лету» по маске

Page not found - 404

redirect_get_current_redirect()

drupal_get_query_parameters()

drupal_goto()

Page 15: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Настройка переадресацииС помощью JavaScript

Проверить наличие Cookie версии сайта

Есть

Перенаправить

Нет

Определить устройствоЗаписать Cookie

Page 16: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Внутренняя SEO-оптимизация

Семантика

1. HTML-разметка

2. Микроразметка

3. Open Graph теги

Page 17: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Внутренняя SEO-оптимизация

Индексация

1. Мета-теги

2. Pathauto

3. Canonical URL

4. Robots.txt

5. XML Sitemap

6. Global Redirect

Page 18: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Внутренняя SEO-оптимизация

Alternate-теги

<link hreflang="fr" href="http://fr.site.com/" rel="alternate"><link media="only screen and (max-width: 640px)" href="http://fr.m.site.com/" rel="alternate">

1. В теле страницы

2. В XML-карте сайта<xhtml:link hreflang="fr" rel="alternate" href="http://fr.site.com"/><xhtml:link rel="alternate" media="only screen and (max-width: 640px)" href="http://fr.m.site.com"/>

Page 19: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Запуск

Page 20: Сергей Мирошниченко - SEO-friendly data migration

Lviv Euro DrupalCamp 2014Lviv Euro DrupalCamp 2014

Анализ последствий

1. Google webmaster tools

2. Google Analytics

3. Server logs

4. Application logs.