Уявіть масштабне перенесення інтернет-магазину з 100 000 товарів, даними замовлень і користувачів. У старій системі категорії мають хаотичну структуру, зображення зберігаються у випадкових папках, а коментарі містять 500 000 записів із вкладеними гілками до 15 рівнів. Ручне копіювання зайняло б місяці, із неминучими помилками. Ми використовуємо вбудований інструмент Drupal – модуль Migrate, який виконує вилучення (Extract), трансформацію (Transform) та завантаження (Load). За останні шість років реалізовано понад 60 таких проєктів. При правильному налаштуванні Migrate обробляє 10 000 записів за 12–18 хвилин. Звертайтеся – ми проведемо аудит і складемо план.
Як працює модуль Migrate?
Структура Migrate базується на трьох компонентах, заданих у YAML:
-
Source: джерело даних (CSV, SQL, JSON, Drupal 7, WordPress тощо).
-
Process: перетворення полів – маппінг, конвертація, обчислення.
-
Destination: цільова сутність Drupal (нода, таксономія, файл).
Кожен компонент може бути розширений власними плагінами. Наприклад, для трансформації даних ми створюємо кастомні process plugins, які об'єднують поля з різних джерел або конвертують формати. Завдяки цьому вдається перенести навіть складні структури даних без втрат.
Які переваги автоматизованої міграції?
Автоматизація міграції дає значну економію часу та ресурсів. Порівняйте:
| Характеристика |
Ручне перенесення |
Автоматизована міграція Migrate |
| Час (100 000 записів) |
3-4 місяці |
5-7 днів |
| Кількість помилок |
10-15% |
<1% |
| Вартість |
від 100 000 грн |
від 30 000 грн |
| Можливість інкрементального оновлення |
Ні |
Так |
Як бачимо, автоматизація зменшує витрати втричі та практично виключає людський фактор. Крім того, Migrate дозволяє інкрементально оновлювати дані — після первинного перенесення ви можете регулярно синхронізувати лише нові та змінені записи.
Типові проблеми та їх вирішення
- Помилки з'єднання з базою: перевірте права доступу та рядок підключення. Якщо джерело не відповідає, налаштуйте правильний DSN.
- Неправильне мапування полів: використовуйте
drush migrate:fields для перегляду доступних полів цільової сутності.
- Дублікати: увімкніть
track_changes або використовуйте highwater mark.
- Відсутність файлів: налаштуйте плагін
download із коректними URL. Для невалідних файлів передбачте логування.
Наш досвід показує, що 95% проблем вирішуються на етапі тестування. Ми завжди запускаємо міграцію на копії даних, щоб уникнути ризиків.
Що входить в нашу послугу з міграції
При замовленні послуги ви отримуєте:
- Документація: детальний план міграції зі схемами маппінгу полів.
- Налаштування середовища: підготовка Drupal та модулів (Migrate, Migrate Tools, Migrate Plus).
- Розробка плагінів: custom source та process plugins для нестандартних джерел.
- Тестування: запуск на стейджингу з перевіркою всіх типів контенту.
- Перенесення в продакшн: мінімальний даунтайм, резервне копіювання.
- Навчання: консультація вашої команди щодо роботи з міграцією.
- Підтримка: безкоштовне виправлення помилок протягом 30 днів після завершення.
Чому обирають нас: досвід та метрики
- 6+ років на ринку веб-розробки. Наш досвід підтверджено сертифікатами Acquia.
- 60+ успішних проєктів з міграції на Drupal, включаючи інтернет-магазини, портали та корпоративні сайти.
- 5 років спеціалізації на Drupal (з версій 7 до 10).
- 100% збереження даних — жоден проєкт не завершився втратою інформації. Гарантія якості.
- Швидкість: середня швидкість міграції — до 5000 записів на хвилину.
Ми пропонуємо безкоштовний аудит вашого проєкту. Навіть якщо ви не впевнені у можливості перенесення, ми знайдемо рішення. Економія бюджету до 70% порівняно з ручним перенесенням.
Висновок та заклик до дії
Модуль Migrate — це потужний інструмент для імпорту контенту в Drupal. Він економить час, зменшує помилки та дозволяє масштабувати процеси. Оцініть ваш проєкт безкоштовно — напишіть нам сьогодні! Ми проведемо аудит, підготуємо план та кошторис. Не відкладайте міграцію — почніть з консультації.
Замовляйте аудит вашої системи: отримайте детальний звіт про можливості міграції та точну вартість робіт. Ми працюємо з будь-якими джерелами даних: CSV, SQL, API, WordPress, Joomla, попередні версії Drupal. Результат — безшовне перенесення зі збереженням усіх зв'язків та структури.
Покрокова інструкція налаштування міграції
1. Встановіть модулі Migrate, Migrate Tools, Migrate Plus через Composer.
2. Створіть YAML-файл конфігурації міграції в каталозі `config/install` вашого модуля або профілю.
3. Визначте source: вкажіть тип джерела (наприклад, CSV) та його налаштування (шлях до файлу, роздільник).
4. Налаштуйте process: зіставте поля джерела з цільовими полями Drupal, використовуючи плагіни за потреби.
5. Вкажіть destination: тип сутності (наприклад, 'entity:node' для матеріалів) та bundle.
6. Запустіть міграцію через Drush: `drush migrate:import `. Для тестування використовуйте `--limit=10`.
7. Перевірте результати: `drush migrate:status` та `drush migrate:messages` для помилок.
Документація Drupal Migrate: https://www.drupal.org/docs/8/api/migrate-api
Редизайн та міграція сайту: зміна CMS, збереження SEO
Клієнт прийшов через 6 тижнів після самостійного редизайну: «Ми переїхали з WordPress на Tilda, трафік впав на 70%». Відкриваю Google Search Console — 847 сторінок віддають 404, URL-структура повністю змінилася, жодного 301-редиректу. Яндекс ще не переіндексував новий сайт, позиції впали. Відновлення зайняло 4 місяці та призвело до значних фінансових втрат. Наш досвід — понад 7 років та 80+ успішних міграцій. Клієнти, які замовляють професійну міграцію, відновлюють трафік у 3 рази швидше, ніж ті, хто виконує її самостійно.
Чому міграції ламають SEO?
Пошуковики проіндексували конкретні URL. Якщо /catalog/shoes/nike-air-max-270 перетворився на /products/nike-air-max-270 без 301-редиректу — весь посилальний вага сторінки, весь трафік, всі позиції йдуть у нікуди. Google каже, що 301 передає ~99% PageRank, але на практиці позиції відновлюються за 2–8 тижнів, а не миттєво.
Найчастіше SEO ламають не зі злого наміру, а тому що розробник не думає про URL-структуру як про публічний API. Ось типові поломки:
| Проблема |
Причина |
Рішення |
| Дубльований контент |
Новий сайт відкривається паралельно зі старим |
Вимкнути індексацію dev-версії, налаштувати canonical |
| Втрата метаданих |
Title і description залишилися в старій CMS |
Експорт через API, масовий імпорт з перевіркою |
| Зміна canonical |
Пагінація та фільтри скинулися |
Зафіксувати до розробки, впровадити в шаблон |
| Швидкість просіла |
Важкі секції, неоптимізовані зображення |
Оптимізувати LCP, CLS, TTFB до запуску |
Як відновити трафік після невдалої міграції?
Якщо трафік впав — дійте негайно:
- Краул нового сайту на 404 та порівняння з передміграційним списком URL.
- Створення редиректів для всіх втрачених сторінок з трафіком >0.
- Перевірка структурованих даних та мета-тегів на тестовій вибірці.
- Щоденний моніторинг Coverage в Search Console та позицій за топ-50 запитами.
- Якщо через 2 тижні трафік не відновлюється — глибокий аудит редиректів (транзитивність, ланцюжки, цикли).
У нашій практиці такий випадок: великий інтернет-магазин втратив 50% трафіку при переїзді з Бітрікса на React + Strapi. За три дні відновили 95% редиректів, через 3 тижні трафік повернувся на 90% від початкового.
Як підготувати сайт до міграції: що не можна пропустити?
До початку розробки нового сайту потрібно:
- Повний краул поточного сайту через Screaming Frog або Sitebulb. Отримати список всіх індексованих URL з трафіком з Google Search Console.
- Вивантажити всі сторінки з органічним трафіком >0 за останні 6 місяців — це пріоритет для редиректів.
- Зафіксувати всі зовнішні посилання (backlinks) на конкретні сторінки — Ahrefs, Semrush.
- Сфотографувати поточні позиції за ключовими запитами — база для порівняння після міграції.
- Зберегти Core Web Vitals з Search Console за попередні 90 днів.
Таблиця для фіксації:
| Етап аудиту |
Інструмент |
Критичність |
| Збір URL |
Screaming Frog + GSC |
Висока |
| Трафік за сторінками |
Google Analytics / Search Console |
Висока |
| Зовнішні посилання |
Ahrefs / Majestic |
Середня |
| Позиції |
Яндекс.Wordstat / Serpstat |
Середня |
| Core Web Vitals |
GSC CrUX |
Висока |
Зв'яжіться з нами для детального передміграційного аудиту — ми допоможемо виявити всі ризики та скласти план дій.
Мапінг URL та редиректи
Для проекту з 200+ сторінками створюємо таблицю мапінгу: старий URL → новий URL → статус (301, об'єднаний з іншою сторінкою, видалений). Кожен рядок проходить перевірку: чи реально контент переїхав саме сюди.
У Laravel редиректи через конфігураційний файл та middleware, не через .htaccess — це швидше та керованіше. Для WordPress → Next.js: редиректи налаштовуються в next.config.js (статичні) та на рівні Nginx/CDN для динамічних. Старий .htaccess на shared хостингу з 500+ рядками редиректів — особливий ад. Кожен редирект перевіряється послідовно, продуктивність падає. Переносимо в Nginx map директиву або Redis-кеш для динамічного пошуку.
Міграція контенту з різних CMS
WordPress → Headless CMS (Contentful, Strapi, Sanity):
WordPress REST API або WP All Export для експорту постів, метаполів, медіафайлів. Скрипт міграції на Node.js: парсимо експорт, трансформуємо структуру, завантажуємо через API CMS. Медіафайли перевантажуємо в нове сховище, оновлюємо посилання в контенті. Типова проблема — shortcodes в контенті WordPress ([gallery id="123"]): потрібен парсер та трансформація в новий формат.
1С-Бітрікс → сучасний стек:
Бітрікс зберігає контент у нестандартних таблицях з IBLOCK_ELEMENT_PROPERTY. Прямий SQL-експорт через phpMyAdmin або Bitrix API. Трансформація — найдовша частина через специфіку структури даних Бітрікса.
Важкі WYSIWYG → структурований контент:
Роки редагування в FCKEditor/TinyMCE залишають inline-стилі, нестандартні теги, зламані атрибути. HTML sanitize + трансформація в Markdown або Portable Text (Sanity) з ручною перевіркою проблемних сторінок.
| CMS |
Інструменти міграції |
Складність |
Ризики |
| WordPress |
WP All Export, WP-CLI, REST API |
Середня |
Shortcodes, meta fields |
| 1С-Бітрікс |
Bitrix API, SQL-експорт |
Висока |
Складна структура, властивості інфоблоків |
| Joomla |
J2XML, пряме вивантаження з БД |
Висока |
Застарілі розширення |
| Tilda/Readymag |
Експорт через API (обмежений) |
Середня |
Немає повного доступу до контенту |
SEO-збереження технічних елементів
Структуровані дані (Schema.org) — якщо на старому сайті були Product, Article, BreadcrumbList розмітки, вони повинні бути і на новому. Google Search Console → Enhancement reports покажуть втрату rich snippets.
Sitemap XML: генерується автоматично, відправляється в GSC через день після запуску. Старий sitemap залишається до повної переіндексації.
hreflang для багатомовних сайтів: якщо теги загубилися при міграції, через кілька тижнів почнуться конфлікти між мовними версіями у видачі.
Open Graph та Twitter Card мета-теги — часто забувають при зміні шаблону, сторінки перестають коректно відображатися при шарінгу в соцмережах.
Як контролювати сайт після запуску?
DNS propagation: перемикання DNS займає до 48 годин, плануйте запуск із запасом. Cloudflare як DNS-провайдер — propagation займає хвилини, не години.
Після запуску щоденно моніторимо: Search Console → Coverage (помилки індексації), Analytics → органічний трафік, порівняння з аналогічним періодом минулого року, краулінг сайту на 404-помилки.
Перші 2 тижні — критичний період. Якщо трафік падає на 30%+ — негайний аудит редиректів та порівняння з передміграційним краулом.
Чек-лист на запуск (спойлер)
- [ ] Всі 301 редиректи працюють і не утворюють ланцюжків
- [ ] Sitemap відправлений в GSC та Яндекс.Вебмайстер
- [ ] Прописані canonical на всіх сторінках
- [ ] Перевірено відображення Open Graph / Twitter Card
- [ ] Скориговані robots.txt та мета-теги noindex
- [ ] Core Web Vitals в зеленій зоні (LCP <2.5s, CLS <0.1, INP <200ms)
Що входить в роботу
Результати, які ви отримуєте:
- План міграції з мапінгом URL та редиректів у форматі Excel/Google Sheets.
- Налаштовані 301 редиректи на серверному рівні (Nginx/Cloudflare/Vercel).
- Перенесений контент з перевіркою цілісності: зображення, мета-поля, посилання.
- Структуровані дані (Schema.org) на новому сайті, ідентичні старим або покращені.
- Звіт по SEO: динаміка позицій через 1, 3 та 6 тижнів після запуску.
- Моніторинг Coverage в Search Console з повідомленнями про помилки.
- Гарантія збереження позицій: якщо трафік падає більш ніж на 15% протягом першого місяця — безкоштовний аудит та корекція.
Терміни та орієнтири
- Редизайн з міграцією невеликого сайту (до 100 сторінок): 4–8 тижнів.
- Міграція e-commerce з 500+ сторінок товарів: 8–16 тижнів.
- Тільки технічна частина міграції (редиректи, метадані) без редизайну: 1–3 тижні.
Вартість розраховується індивідуально за обсягом. Середня економія клієнта за рахунок збереження трафіку після міграції — суттєва сума для бізнесу.
Отримайте консультацію по вашому проекту — ми відповімо протягом дня. Замовте передміграційний аудит вашого сайту та отримайте точний кошторис з планом редиректів. Зв'яжіться з нами, щоб обговорити деталі.