WooCommerce — бесплатный плагин для WordPress, превращающий его в полноценный интернет-магазин. Поддерживает физические, цифровые товары и подписки.
Установка WooCommerce
- Плагины → Добавить → «WooCommerce» → Установить → Активировать
- Запустится мастер Setup Wizard
- Укажите страну, валюту, тип товаров
- Настройте платёжные методы и доставку
Добавление товаров
- Товары → Добавить новый
- Введите название, описание, цену
- Укажите SKU, вес, размеры (для физических)
- Загрузите изображение товара и галерею
- Выберите категорию и теги
Платёжные методы
| Шлюз | Комиссия | Настройка |
|---|---|---|
| Stripe | 2.9% + $0.30 | Плагин WooCommerce Stripe |
| PayPal | 3.49% + $0.49 | WooCommerce PayPal Payments |
| LiqPay | от 2.5% | Для Украины |
SEO для магазина
- Установите Yoast SEO + WooCommerce SEO
- Настройте ЧПУ: Настройки → Постоянные ссылки → Название записи
- Добавьте Schema.org Product в товары (Yoast делает автоматически)
- Создайте уникальные описания для каждого товара
Производительность WooCommerce
- Страницы корзины и оформления заказа — исключите из кэша
- Для больших каталогов (1000+ товаров) — используйте VPS вместо shared
- Установите WooCommerce PDF Invoices для автоматических счетов
Разбор ошибок при запуске магазина
Большинство ошибок при первом запуске WooCommerce возникают не из-за самого плагина, а из-за несоответствия окружения его требованиям.
| Текст ошибки или симптом | Причина | Что делать |
|---|---|---|
| Error establishing a database connection при активации WooCommerce | Активация создаёт новые таблицы wp_wc_*, а лимит соединений к БД на shared-хостинге уже исчерпан | Активировать плагин в период низкой нагрузки, проверить max_connections |
| There has been a critical error on this website после установки платёжного плагина | Версия PHP ниже требуемой платёжным шлюзом (обычно нужен минимум PHP 7.4) | Обновить PHP минимум до 8.1 перед установкой платёжных плагинов |
| 500 ошибка на странице оформления заказа | WAF или security-плагин блокирует POST-запрос checkout как подозрительный | Добавить исключение для /checkout/ и /wp-json/wc/store/ в правилах фаервола |
| Товары не отображаются на витрине после импорта CSV | Импортированные товары остаются в статусе «черновик», а не «опубликовано» | Проверить статус записей: Товары → Все товары → фильтр по статусу |
Если ошибка именно про лимит соединений к MySQL — см. статью про too many connections.
Когда WooCommerce — не лучший выбор
- Каталог из десятков тысяч SKU с ежедневным обновлением цен от поставщика — WooCommerce на MySQL начинает деградировать, стоит смотреть в сторону специализированных PIM или ERP-интеграций
- Подписочная модель со сложным биллингом (пропорциональные списания, паузы, апгрейды тарифов) — базового WooCommerce Subscriptions может не хватить без глубокой кастомизации
- Мультивендорный маркетплейс с независимыми продавцами — потребуется отдельный плагин маркетплейса поверх WooCommerce, что усложняет поддержку
- Продажа исключительно цифровых лицензий с активацией на устройствах — проще специализированный сервис лицензирования, чем подгонять под это WooCommerce
- Магазин с юридическим требованием фискализации каждого чека в реальном времени — потребуется отдельная интеграция с фискальным регистратором или онлайн-кассой, штатными средствами WooCommerce это не решается
Перед выбором платформы стоит честно оценить ожидаемый трафик на ближайший год: миграция с WooCommerce на специализированную платформу после накопления тысяч заказов обходится в разы дороже, чем выбор правильного решения на старте.
Настройка доставки
Тарифы доставки настраиваются по зонам: WooCommerce → Настройки → Доставка → Добавить зону доставки. Пример типичной настройки для магазина, работающего на Украину и ЕС:
| Зона доставки | Способ | Стоимость |
|---|---|---|
| Украина | Отделение перевозчика | от 60 грн |
| Украина | Курьер по городу | от 90 грн |
| ЕС | Международная почта | от 15 EUR |
Как проверить, что магазин готов к запуску
- Оформите тестовый заказ в sandbox-режиме платёжного шлюза с реальным сценарием оплаты
- Проверьте, что email-уведомления о новом заказе доходят и покупателю, и администратору
- Сверьте базовые настройки через WP-CLI, не заходя в админку
- Проведите нагрузочную проверку checkout под 10 одновременными тестовыми сессиями
- Проверьте актуальность SSL-сертификата на всех платёжных страницах — без валидного HTTPS платёжные шлюзы отклоняют запросы ещё до попытки оплаты
wp option get woocommerce_currency
wp eval 'echo wc_get_page_id("shop");'
Подробнее о выборе типа SSL-сертификата для магазина — в статье про типы SSL: DV, OV, EV.