Диагностика синхронизации данных с WP All Import Pro
Для синхронизации цен и статуса наличия на сайте я использую плагин WP All Import Pro и импортирую данные из XML-файла. Первичная настройка выполнена успешно: данные были импортированы и корректно отображены. Для повторной синхронизации настроено сопоставление по полю _sku, выбраны поля «цена» и «статус наличия». На сервере добавлена cron-команда для запуска импорта раз в час.
Однако возникла проблема: плагин иногда не обнаруживает различий между данными в XML-файле и текущими данными на сайте, даже если они реально существуют. Я намеренно вручную менял цену и статус наличия - изменений в XML и на сайте было много. В ряде случаев плагин обновляет все товары, хотя фактических изменений не было; в других случаях он пропускает все записи, сообщая, что «обновлять нечего», хотя изменения есть и они очевидны.
Как проверить корректность работы плагина?
Логи плагина фиксируют только действия (какие товары были обработаны, какие поля обновлены), но не показывают причину, по которой плагин игнорирует различия. Для более глубокой диагностики рекомендую:
- Проверить, совпадает ли кодировка XML-файла с настройками импорта (например, UTF-8 без BOM).
- Убедиться, что в поле _sku нет скрытых пробелов, лишних символов или несоответствия регистра.
- Временно включить подробное логирование WP All Import (через константу
WP_ALL_IMPORT_LOGGING) и проанализировать полные записи. - Проверить, обрабатывает ли cron-задача правильный URL XML-файла, и нет ли кэширования на стороне сервера или CDN.
- Протестировать ручной запуск импорта через админ-панель - если он работает корректно, проблема может быть в cron-интервале или настройках повторного импорта.
- Настроить уведомления (email-log) о результатах импорта, чтобы оперативно получать отчёт об ошибках.
Если после этих шагов проблема сохранится, стоит временно заменить плагин на альтернативный (например, WP All Export или Advanced Custom Fields для сверки), либо обратиться в поддержку разработчиков с копией логов.