16. Розв’язання проблем (FAQ)

Тут зібрані найчастіші проблеми і способи їх вирішення. Якщо ваша ситуація не знайшлася - звертайтесь у підтримку.

Метод доставки/оплати не показується у чекауті

Це найчастіша проблема. Перевіряйте по черзі:

  1. Чи увімкнено модуль FCR. Перейдіть в адмінку - перемикач "Статус" вгорі сторінки FCR має бути зеленим
  2. Чи увімкнено сам метод доставки/оплати в OpenCart. Якщо метод вимкнений у Extensions → Shipping/Payment - FCR його просто не побачить
  3. Чи активна ліцензія FCR. Якщо ліцензія вийшла з grace period - FCR не застосовує свою логіку (методи показуються "як є")
  4. Чи виконуються умови методу. Увімкніть дебаг умов і перевірте лог. Шукайте назву методу і дивіться які умови провалились
  5. Чи правильно введені значення в умовах. Часта помилка - "1000" замість "1000.00" (для дробових), або не та країна, не та категорія

Націнка за оплату не застосовується

  1. Чи увімкнена націнка (перемикач "Увімкнено" в панелі націнки)
  2. Чи правильний sort_order. Якщо база розрахунку - "Повна сума", sort_order має бути >= 8 (після всіх інших підсумків)
  3. Чи виконуються умови націнки. Увімкніть дебаг і подивіться чи з’являється повідомлення "Націнка #N застосовано" або "пропущено"
  4. Якщо ви на OPC або SmartCheckout - спробуйте оновити сторінку після зміни методу оплати. Якщо допомагає - проблема в перерахунку тоталів стороннім чекаут-модулем (див. розділ 15)
  5. Перевірте значення - 0 не дасть жодного ефекту. Для націнки використовуйте додатнє число (1, 50), для знижки - від’ємне (-1, -50)

Умова не спрацьовує як очікую

  1. Перевірте лог дебагу - там видно фактичне значення яке FCR обчислив (actual: ...) і порівняйте з тим що ви очікували
  2. Перевірте оператор. = (точно дорівнює) і >= (більше або дорівнює) дають різні результати на граничних значеннях
  3. Strict mode для умов на товари: вимкнено = "хоча б один товар", увімкнено = "усі товари"
  4. Адресні умови (country, city, postcode) перевіряють адресу доставки. Якщо клієнт ще не ввів адресу - умова поверне false
  5. Умови на залогінених (orders, customer_total_spent) повертають 0 для гостей

Логічний вираз не парситься

Вираз перевіряється прямо під час введення: помилка зʼявляється під полем, з описом і позицією символу. Якщо підказка є, орієнтуйтесь на неї. Загальні правила:

  • Перевірте чи всі дужки збалансовані (кількість ( = кількість ))
  • Використовуйте лише AND, OR, NOT (або &&, ||, !)
  • Кожне посилання на умову має формат $N де N - число (без пробілів між $ і числом)
  • Номер умови має існувати: якщо умов три, то доступні лише $0, $1, $2

Не вдається зберегти налаштування методу

Якщо після натискання "Зберегти" зʼявляється червоне повідомлення і вікно не закривається, модуль знайшов налаштування, яке не працюватиме на чекауті. Повідомлення завжди називає конкретну причину, а проблемне поле підсвічується і прокручується у видиму частину екрана.

Збереження зупинено через незаповнене поле
Проблемне поле підсвічується, а повідомлення називає конкретну причину

Найчастіші причини:

  • Умова без значень - обрано тип, але не вибрано жодного значення. Така умова вважалася б виконаною завжди;
  • Помилка в логічному виразі - див. попереднє питання;
  • Порожня колонка "До" у таблиці вартості - раніше такий рядок мовчки зникав при збереженні;
  • Текст у числовому полі - наприклад "500 грн" замість "500" у порозі безкоштовної доставки;
  • Недопустимий символ у формулі - формула розуміє лише D, W, Q, S, T (великими літерами), відсоток, дужки та арифметику;
  • Обрано розрахунок за таблицею, але жодного рядка не заповнено;
  • Увімкнено власну назву або заглушку, але відповідне поле порожнє.
Про багатомовні поля

Назву достатньо заповнити однією мовою. Для решти мов модуль підставить наявний переклад, і збереженню це не заважає.

Помилки після оновлення модуля

  1. Очистіть кеш OpenCart - кнопки SCSS і Theme у правому верхньому куті адмінки
  2. Refresh modifications - Extensions → Modifications → Refresh
  3. Очистіть кеш браузера (Ctrl+Shift+R) - старий JavaScript може кешуватись
  4. Перевірте логи OpenCart і FCR на нові помилки
  5. Якщо нічого не допомогло - зробіть експорт налаштувань, видаліть і встановіть модуль наново, потім імпортуйте

Як скинути всі налаштування

Перейдіть на вкладку "Додатково" - блок "Експорт / Імпорт" - кнопка "Скинути всі налаштування". Перед скиданням обов’язково зробіть експорт - відновити неможливо.

Як видалити модуль повністю

  1. Extensions → Extensions → Modules → знайти FlexiCheckoutRules → червона кнопка Uninstall
  2. Extensions → Modifications → знайти запис FlexiCheckoutRules → червона кнопка Delete
  3. Extensions → Modifications → кнопка Refresh вгорі
  4. Очистити кеш (SCSS, Theme)
  5. Файли модуля видаляться автоматично через OCMOD-механізм

Як отримати підтримку

Якщо нічого з цього розділу не допомогло:

  1. Зробіть експорт налаштувань FCR
  2. Увімкніть дебаг розробника і відтворіть проблему
  3. Збережіть лог-файли (fcr_conditions.log, fcr_debug.log)
  4. Зробіть скріншоти того що ви бачите
  5. Напишіть на opencartforum або в особисту підтримку
  6. Опишіть очікувану і фактичну поведінку, додайте всі файли
Чим детальніше опишете - тим швидше отримаєте відповідь

Найгірша заявка: "Не працює, допоможіть". Найкраща заявка містить: версію OC, версію FCR, опис кроків відтворення, лог дебагу, експорт налаштувань і скріншоти.