Міграція сайту з WordPress на 1С-Bitrix
Перехід з WordPress на 1С-Bitrix — це не конвертація файлів, а повнофункціональна розробка нового сайту з перенесенням даних. Структура зберігання контенту, логіка шаблонізації та архітектура плагінів WordPress принципово відрізняються від компонентної моделі Bitrix. Розумійте це з першого засідання.
Аналіз WordPress-сайту перед міграцією
WordPress зберігає весь контент у двох ключових таблицях: wp_posts (публікації, сторінки, користувацькі типи записів) та wp_postmeta (користувацькі поля — metadata). До них додаються wp_terms, wp_term_taxonomy, wp_term_relationships — таксономії (рубрики, мітки, користувацькі категорії).
Перед початком робіт скласти повну карту даних:
- Які Custom Post Types використовуються та що в них зберігається
- Які плагіни забезпечують ключову функціональність (WooCommerce, ACF, Yoast SEO, WPML)
- Обсяг медіатеки (
wp_attachment) - Кількість користувачів та їхні ролі
Кожен з цих елементів вимагає окремої стратегії перенесення.
Перенесення контенту: статті та сторінки
Статті та сторінки з wp_posts переносяться в інфоблок Bitrix. Створюється інфоблок типу «Статті» / «Новини», і для кожного посту WordPress створюється елемент через CIBlockElement::Add().
Поля маппяться так:
| WordPress | Bitrix (інфоблок) |
|---|---|
post_title |
NAME |
post_content |
DETAIL_TEXT |
post_excerpt |
PREVIEW_TEXT |
post_date |
ACTIVE_FROM |
post_name (slug) |
CODE |
| Thumbnail (featured image) | PREVIEW_PICTURE / DETAIL_PICTURE |
ACF-поля (Advanced Custom Fields) переносяться у властивості інфоблока. Тип поля в ACF визначає тип властивості у Bitrix: текст → S, число → N, зображення → F, зв'язок з постом → G (прив'язка до елемента).
WooCommerce: перенесення інтернет-магазину
Якщо на WordPress працював WooCommerce — це окремий пласт роботи. Таблиці WooCommerce (wc_orders, wc_order_items, wc_product_meta_lookup, та старий формат через wp_posts з post_type='product') потрібно перенести в модуль «Інтернет-магазин» Bitrix.
Товари з WooCommerce переносяться у каталог Bitrix:
- Прості товари → елементи інфоблока каталогу
- Варіативні товари → торговельні пропозиції (SKU) через
catalog.sku - Категорії товарів → розділи інфоблока
Замовлення WooCommerce мігрують через CSaleOrder::Add() з воссоздання складу замовлення через CSaleBasket. Це потрібно, якщо вимагається зберегти історію замовлень. Якщо історія не критична — мігруємо тільки товари та клієнтську базу.
Мультимовність (WPML → Bitrix)
WPML зберігає переклади в таблицях icl_translations та icl_string_translations. У Bitrix мультимовність реалізована через механізм мов сайту: для кожної мови створюється окрема мовна версія елемента інфоблока (через ACTIVE_LANGS та налаштування багатосайтовості). Структура принципово інша — перенесення вимагає окремого скрипту з урахуванням мовних пар.
SEO: збереження позицій
Зберегти структуру URL та 301 редиректи від старих шляхів до нових. Meta titles/descriptions з Yoast переносяться в налаштування SEO Bitrix для кожного елемента. Внутрішні посилання в контенті мають бути оновлені з URL WordPress на URL Bitrix.







