Как создать автоматический импорт товаров в WordPress с помощью WPRemark

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

Почему важен автоматический импорт товаров в WordPress

Ручное добавление и обновление товаров занимает много времени, особенно если ассортимент большой или меняется часто. Автоматизация позволяет:

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

WPRemark, хотя и является плагином для работы с отзывами, отлично подходит для расширения функционала магазина и интеграции с внешними данными, благодаря гибкости API и возможностям кастомизации.

Подготовка к автоматическому импорту товаров

Выбор источника данных

Для импорта товаров чаще всего используют следующие форматы и источники:

  • CSV или XML-файлы с описаниями товаров от поставщика;
  • API внешних сервисов (оптовиков, маркетплейсов);
  • JSON-формат с REST API.

Выбор зависит от того, что предоставляет поставщик. В примере ниже мы будем использовать API в формате JSON.

Установка и настройка WPRemark

Установите плагин WPRemark с официального сайта WPShop. Он позволит создавать дополнительные поля и интегрировать данные с товарами.

После установки активируйте плагин и перейдите в его настройки для базовой конфигурации.

Создание кастомного скрипта для импорта товаров

Для автоматизации импорта напишем функцию, которая будет обращаться к внешнему API, получать список товаров и добавлять или обновлять их в базе WordPress.

Пример функции импорта товаров

function wpkit_import_products_from_api() {
    $api_url = 'https://example.com/api/products'; // URL API поставщика

    $response = wp_remote_get($api_url);
    if (is_wp_error($response)) {
        error_log('WPKit Import Error: ' . $response->get_error_message());
        return;
    }

    $body = wp_remote_retrieve_body($response);
    $products = json_decode($body, true);
    if (empty($products) || !is_array($products)) {
        error_log('WPKit Import Error: некорректный формат данных');
        return;
    }

    foreach ($products as $product) {
        // Проверим, есть ли уже товар по артикулу
        $existing = get_posts([
            'post_type' => 'product',
            'meta_key' => '_sku',
            'meta_value' => $product['sku'],
            'posts_per_page' => 1
        ]);

        $post_data = [
            'post_title' => sanitize_text_field($product['name']),
            'post_content' => sanitize_textarea_field($product['description']),
            'post_status' => 'publish',
            'post_type' => 'product'
        ];

        if ($existing) {
            $post_data['ID'] = $existing[0]->ID;
            $post_id = wp_update_post($post_data);
        } else {
            $post_id = wp_insert_post($post_data);
        }

        if (is_wp_error($post_id)) {
            error_log('WPKit Import Error: не удалось добавить/обновить товар ' . $product['sku']);
            continue;
        }

        // Обновляем мета-данные товара
        update_post_meta($post_id, '_sku', sanitize_text_field($product['sku']));
        update_post_meta($post_id, '_price', floatval($product['price']));
        update_post_meta($post_id, '_stock', intval($product['stock']));

        // Можно добавить интеграцию с WPRemark для отзывов или рейтингов
    }
}

Эту функцию можно запускать по cron или вручную через WP-CLI.

Настройка планировщика задач (WP-Cron) для регулярного импорта

Чтобы импорт происходил автоматически, добавим задачу в WP-Cron.

function wpkit_schedule_product_import() {
    if (!wp_next_scheduled('wpkit_product_import_hook')) {
        wp_schedule_event(time(), 'hourly', 'wpkit_product_import_hook');
    }
}
add_action('wp', 'wpkit_schedule_product_import');

add_action('wpkit_product_import_hook', 'wpkit_import_products_from_api');

Этот код запустит импорт товаров каждый час. Частоту можно изменить, добавив собственный интервал или выбрав другой из стандартных.

Полезные плагины для расширения функционала импорта

WPRemark для отзывов и рейтингов

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

Clearfy Pro для оптимизации

Для ускорения работы магазина рекомендуем использовать Clearfy Pro, который убирает лишние запросы и оптимизирует базу данных, что особенно важно при большом количестве товаров.

Советы по отладке и безопасности

При работе с внешними API важно обрабатывать ошибки и логировать результаты, чтобы вовремя выявлять проблемы с импортом. Убедитесь, что запросы защищены (используйте HTTPS), а ключи API хранятся в защищенных местах, например, в файле wp-config.php.

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

Как сделать многоязычный сайт на WordPress с помощью Polylang
22.03.2026
Как сделать автоматический импорт постов с изображениями в WordPress
28.03.2026
Как удалить не удаляемые плагины в WordPress: эффективные методы
20.11.2025
Как отключить XML-RPC в WordPress для повышения безопасности
25.03.2026
Как использовать хуки для оптимизации производительности WordPress
25.12.2025