Flora24 CRM Integration for MFlowers
WordPress плагин для интеграции Flora24 CRM с WooCommerce
by Roman NMSK · github.com/nmskvideo-dot/flora24-crm-integration
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/nmskvideo-dot/flora24-crm-integration/archive/refs/heads/master.zipFlora24 CRM Integration для MFlowers
WordPress плагін для синхронізації цін та доступності товарів з CRM Flora24 у WooCommerce магазин.
📋 Опис
Flora24 CRM Integration — це професійний WordPress плагін, розроблений для інтеграції WooCommerce-магазину з системою управління CRM Flora24. Плагін забезпечує повністю автоматизовану синхронізацію:
- Ціни товарів — автоматичне оновлення в реальному часі
- Доступність (наявність) — моніторинг статусу товарів у CRM
- Розширене логування — детальне відстеження всіх операцій
- Гнучка настройка — керування інтервалом синхронізації
- Майстер-консоль — зручний інтерфейс адміністратора для контролю
✨ Основні можливості
🆕 Керування Flora24 ID товарів (v1.5.0+)
- Вбудоване поле на сторінці редагування — легко додати Flora24 ID кожному товару
- Колонка в списку товарів — швидкий перегляд та редагування ID всіх товарів
- Вбудоване редагування — змінюйте ID прямо в таблиці товарів без переходів
- Миттєве збереження — автоматичне збереження з візуальним зворотнім зв'язком
Автоматична синхронізація (Cron)
- Налаштовуваний період синхронізації (від 15 хвилин до 2 днів)
- Використовує ActionScheduler для надійного виконання фонових завдань
- Автоматичний моніторинг всіх товарів з ID Flora24
- Розумне пропускання незмінених товарів для оптимізації
Керування товарами
- Сканування бази — пошук всіх товарів з Flora24 ID
- Ручна синхронізація — оновлення одного або кількох товарів на вибір
- Пакетна обробка — масове оновлення вибраних товарів
- Валідація ID — перевірка коректності Flora24 ID (формат: PRD-xxx або ПРД-xxx)
Логування та налагодження
- Денні логи — автоматичне збереження файлів логів
- Консоль операцій — живий перегляд всіх операцій
- Архів логів — перегляд історії за останні 30 днів
- Детальні звіти — інформація про кожне оновлення товару
Кольоровий код стану
- 🟢 Зелений — успішна синхронізація
- 🔵 Синій — інформаційні повідомлення
- 🟡 Жовтий — запуск процесу
- 🔴 Червоний — помилки та критичні події
🛠️ Вимоги
- WordPress: 5.0+
- WooCommerce: 4.0+
- PHP: 7.2+ (рекомендується 7.4+)
- Action Scheduler: плагін повинен бути встановлений (зазвичай входить в комплект WooCommerce)
- Доступ в інтернет: для підключення до Flora24 API
📦 Встановлення
Спосіб 1: Завантаження плагіна вручну
- Завантажте файл
flora24-crm-integration.php - Перейдіть у WordPress Панель управління → Плагіни → Додати новий
- Нажміть Завантажити плагін і виберіть завантажений файл
- Нажміть Встановити зараз
- Після встановлення нажміть Активувати плагін
Спосіб 2: FTP завантаження
- Підключіться до сервера по FTP
- Перейдіть у папку
/wp-content/plugins/ - Створіть нову папку
flora24-crm-integration - Завантажте файл
flora24-crm-integration.phpв цю папку - У WordPress Панель управління → Плагіни знайдіть плагін і нажміть Активувати
🔧 Налаштування
1️⃣ Отримання API ключа
- Авторизуйтесь на Flora24
- Перейдіть у розділ API & Інтеграції
- Скопіюйте ваш X-API-Key
2️⃣ Конфігурація плагіна
- У WordPress перейдіть у Параметри → Flora 24
- Введіть скопійований X-API-Key у поле авторизації
- Увімкніть опцію Автоматична синхронізація в фоні (опціонально)
- Виберіть оптимальний інтервал синхронізації (рекомендується 1 година)
- Нажміть Зберегти налаштування
3️⃣ Додавання Flora24 ID до товарів
Спосіб 1️⃣ : Швидке редагування в списку товарів (⭐ НОВЕ)
- Перейдіть у WooCommerce → Товари
- Знайдіть колонку Flora24 ID у таблиці
- Клікніть на поле і введіть ID (формат:
PRD-xxxабоПРД-xxx) - ID збереться автоматично з візуальним підтвердженням ✓
Спосіб 2️⃣ : Редагування на сторінці товара
- Перейдіть у WooCommerce → Товари
- Відкрийте товар на редагування
- Знайдіть поле Flora24 ID (під полем SKU)
- Введіть ID товара з Flora24 (формат:
PRD-xxxабоПРД-xxx) - Збережіть товар
📊 Використання
Ручна синхронізація
- Перейдіть у Параметри → Flora 24
- Нажміть кнопку Знайти товари з Flora24 ID
- Плагін відсканує базу і виведе всі товари з ID Flora24
- Можна вибрати товари і нажати Синхронізувати вибрані
- Або нажати кнопку Оновити поруч з окремим товаром
Перегляд логів
- На тій же сторінці Параметри → Flora 24 внизу знаходиться Консоль оновлення
- Виберіть дату логу з випадного списку
- Нажміть Завантажити лог для перегляду повної історії
Автоматична синхронізація (Cron)
- Переконайтесь, що увімкнена опція Автоматична синхронізація
- Встановіть потрібний інтервал (рекомендується 1-3 години для середніх магазинів)
- Плагін буде автоматично оновлювати товари в фоні
⚙️ Розширена конфігурація
Інтервали синхронізації
- Кожні 15 хвилин — для дуже активних каталогів (велике навантаження на сервер)
- Кожні 30 хвилин — для магазинів з частими змінами
- Кожну годину ⭐ РЕКОМЕНДОВАНО — оптимальний баланс
- Кожні 2-12 годин — для стабільних каталогів
- Раз на добу — для магазинів з рідкими змінами
Вимоги до сервера
- Cron-завдання повинні бути увімкнені (зазвичай увімкнені за замовчуванням)
- Action Scheduler повинен мати доступ до БД
- API Flora24 повинна бути доступна з вашого сервера
🐛 Вирішення проблем
Проблема: API ключ не приймається
Рішення:
- Переконайтесь, що ключ скопійований повністю без пробілів
- Перевірте, що ключ ще активний у кабінеті Flora24
- Спробуйте вийти і увійти знову в аккаунт Flora24
Проблема: Товари не синхронізуються
Рішення:
- Перевірте, що товари мають правильний формат Flora24 ID (PRD-xxx)
- Переконайтесь, що товари існують у вашому кабінеті Flora24
- Перевірте логи в Консолі оновлення для деталей помилок
- Переконайтесь, що на сервері увімкнені WordPress Cron-завдання
Проблема: Повільна синхронізація
Рішення:
- Збільшіть інтервал синхронізації (встановіть 2-3 години замість 1)
- Перевірте швидкість підключення до Flora24 API
- Розглядайте можливість оптимізації бази даних WordPress
Проблема: Логи не зберігаються
Рішення:
- Перевірте, що папка
/wp-content/uploads/flora24-logs/існує - Переконайтесь, що у сервера є права на запис у цю папку (755 для Linux)
- Перевірте, що на диску достатньо вільного місця
📝 Структура логів
Логи зберігаються у форматі:
[HH:MM:SS] [Повідомлення операції]
Приклад:
[14:23:45] Запуск масової синхронізації для 5 товарів...
[14:23:47] Товар ID 1234 (Flora ID: PRD-ABC123) [Букет "春"]: Ціна: [250 грн -> 280 грн] | Наявність: [В наявності -> Немає]
[14:23:50] Авто-Крон | Товар ID 1235 (Flora ID: PRD-XYZ789) [Букет "Сакура"]: Синхронізовано успішно
🔐 Безпека
- API ключ — зберігається в зашифрованому вигляді в БД WordPress
- Перевірки прав — тільки користувачі з правами
manage_woocommerceмають доступ - CSRF захист — використовуються WordPress nonce для всіх форм
- Санітизація — всі вхідні дані проходять валідацію та очистку
- Старі логи — автоматично видаляються через 30 днів
� Безопасність (v1.6.1+)
Плагін включає розширені заходи безопеки для захисту вашого магазину:
CSRF захист
- ✅ WordPress Nonce токени для всіх AJAX запитів
- ✅ Перевірка referer для кожного дії управління
Захист від атак
- ✅ Path Traversal — строга валідація імен файлів логів через регулярне вираження
- ✅ Memory Overflow — обмеження розміру файлів логів (макс. 2 МБ в пам'яті)
- ✅ SQL Injection — санітизація всіх вхідних даних
- ✅ Race Conditions — Mutex-блокування через WordPress транзієнти для запобігання конфліктам синхронізації
Валідація даних
- ✅ Строга перевірка структури API відповідей (обов'язкові поля:
price,active) - ✅ Типізація і валідація всіх параметрів
- ✅ Перевірка формату Flora24 ID перед обробкою
Оптимізація ресурсів
- ✅ Batch-кеширування API відповідей (2 хвилини) для зменшення нагрузки на сервер
- ✅ Своєчасне видалення старих логів (понад 30 днів)
- ✅ Контроль пам'яті при обробці великих масивів товарів
�📞 Підтримка
При виникненні проблем:
- Перевірте Вирішення проблем вище
- Подивіться логи в консолі плагіна
- Зв'яжіться з розробником через GitHub Issues
📄 Ліцензія
MIT License — дивіться файл LICENSE
👨💻 Автор
Roman NMSK — розробник та підтримка
🔗 Посилання
📊 Статистика та версії
| Версія | Дата | Зміни |
|---|---|---|
| 1.5.0 | 2026 | 🆕 Вбудоване редагування Flora24 ID у списку товарів + Метабокс на сторінці редагування |
| 1.4.2 | 2024-2026 | Розширене логування та консоль операцій |
| 1.4.0 | 2024 | Додана інтеграція з Action Scheduler |
| 1.0.0 | 2023 | Перша версія |
Дякуємо за використання Flora24 CRM Integration! 🌸