Как создать автоматический импорт продуктов из Excel в WooCommerce

Автоматизация импорта товаров из Excel в WooCommerce — задача, с которой сталкиваются многие владельцы интернет-магазинов на WordPress. Если у вас большой каталог продуктов, ручное добавление каждого товара занимает слишком много времени и увеличивает риск ошибок. В этой статье подробно разберем, как реализовать автоматический импорт товаров из Excel, используя как готовые плагины, так и собственный код.

Почему важно автоматизировать импорт товаров из Excel в WooCommerce

Excel-файлы часто используются для ведения учета товаров, цен и остатков на складе. Перенос данных вручную в WooCommerce занимает часы и несет риск опечаток. Автоматизация позволяет:

  • Сократить время обновления каталога
  • Избежать ошибок при переносе данных
  • Обеспечить регулярное обновление ассортимента и цен
  • Упростить интеграцию с другими системами учета

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

Обзор плагинов для импорта товаров из Excel в WooCommerce

Для автоматизации импорта товаров удобно использовать плагины, которые поддерживают работу с Excel или CSV. Рассмотрим несколько популярных решений:

WP All Import с дополнением WooCommerce

Один из самых мощных плагинов для импорта любых данных в WordPress. Позволяет импортировать товары с настройкой соответствия полей Excel и полей WooCommerce. Поддерживает регулярное обновление каталога.

Особенности:

  • Поддержка Excel через конвертацию в CSV
  • Настройка пользовательских полей и атрибутов товаров
  • Импорт вариаций и изображений

Ссылка на плагин — https://wpshop.ru/wp-all-import

Product Import Export for WooCommerce

Бесплатный и простой плагин для импорта и экспорта товаров в формате CSV. Подходит для небольших магазинов и базового импорта.

Минус — нет поддержки Excel напрямую, нужно конвертировать в CSV.

Ссылка на плагин — https://wpshop.ru/product-import-export-woocommerce

Как настроить автоматический импорт из Excel с помощью собственного кода

Если вы хотите гибко управлять процессом импорта и интегрировать его в собственный функционал, можно написать скрипт на PHP, который будет читать Excel и создавать/обновлять товары в WooCommerce.

Для работы с Excel рекомендуем использовать библиотеку PhpSpreadsheet. Она поддерживает различные форматы и проста в использовании.

Подключение PhpSpreadsheet и чтение файла Excel

Сначала установим библиотеку через Composer:

composer require phpoffice/phpspreadsheet

Пример функции для импорта данных из Excel:

function wpdesk_import_products_from_excel($filepath) {
    require 'vendor/autoload.php';
    $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filepath);
    $worksheet = $spreadsheet->getActiveSheet();
    $rows = $worksheet->toArray();

    // Пропускаем заголовки, начинаем со второй строки
    for ($i = 1; $i < count($rows); $i++) {
        $row = $rows[$i];
        $sku = $row[0];
        $title = $row[1];
        $price = $row[2];
        $stock = $row[3];

        // Проверяем, существует ли товар с таким SKU
        $product_id = wc_get_product_id_by_sku($sku);
        if ($product_id) {
            // Обновляем существующий товар
            $product = wc_get_product($product_id);
            $product->set_name($title);
            $product->set_regular_price($price);
            $product->set_stock_quantity($stock);
            $product->save();
        } else {
            // Создаем новый товар
            $product = new WC_Product_Simple();
            $product->set_sku($sku);
            $product->set_name($title);
            $product->set_regular_price($price);
            $product->set_stock_quantity($stock);
            $product->save();
        }
    }
}

Данная функция берет путь к файлу Excel, читает строки, ожидая, что столбцы идут в порядке: SKU, Название, Цена, Остаток. Для каждой строки создает или обновляет товар по SKU.

Автоматизация запуска импорта

Чтобы импорт запускался автоматически, можно добавить WP-Cron задачу или использовать внешний cron на сервере, который будет запускать PHP скрипт с импортом.

Пример добавления WP-Cron задачи:

add_action('wpdesk_import_products_event', 'wpdesk_import_products_cron');
function wpdesk_import_products_cron() {
    $filepath = WP_CONTENT_DIR . '/uploads/products.xlsx';
    wpdesk_import_products_from_excel($filepath);
}

// Запланировать задачу, если она не запланирована
if (!wp_next_scheduled('wpdesk_import_products_event')) {
    wp_schedule_event(time(), 'hourly', 'wpdesk_import_products_event');
}

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

Обработка ошибок и логирование при импорте

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

Добавим простое логирование в файл:

function wpdesk_log($message) {
    $log_file = WP_CONTENT_DIR . '/uploads/wpdesk_import.log';
    file_put_contents($log_file, date('Y-m-d H:i:s') . ' - ' . $message . PHP_EOL, FILE_APPEND);
}

// Внутри функции импорта
if (!$spreadsheet) {
    wpdesk_log('Ошибка загрузки файла Excel: ' . $filepath);
    return;
}
// При успешном обновлении товара
wpdesk_log('Обновлен товар SKU: ' . $sku);

Так вы сможете отслеживать процесс и своевременно реагировать на проблемы.

Советы по подготовке Excel-файла для импорта

Чтобы импорт прошел гладко, важно правильно подготовить файл:

  • Используйте четкую структуру столбцов — SKU, Название, Цена, Остаток и другие необходимые поля
  • Избегайте пустых строк и лишних символов
  • Убедитесь, что SKU уникальны и соответствуют формату товара
  • Сохраняйте файл в формате XLSX для использования PhpSpreadsheet

Если используете плагины, убедитесь в поддерживаемых форматах, чаще всего это CSV.

Использование плагина Expert Review для проверки импортированных товаров

После импорта товаров полезно проверить качество описаний и метаданных. Плагин Expert Review помогает анализировать контент товаров и дает рекомендации по улучшению SEO и оформлению карточек.

Это отличный инструмент для повышения конверсии после массового импорта.

Как ограничить доступ к страницам WordPress по ролям пользователей
11.12.2025
Как создать уникальный тип записи в WordPress с поддержкой метаданных
14.12.2025
Как оценивать и отзывать автоматические отзывы в WordPress с подтверждением
24.03.2026
Автоматический импорт статей из Яндекс.Дзен в WordPress с подтверждением публикации
15.04.2026
Как добавить поддержку новых типов файлов в WordPress без плагинов
28.12.2025

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