С предстоящото влизане на България в Еврозоната, много собственици на онлайн магазини с OpenCart се сблъскват с един често срещан проблем – въпреки че са сменили основната валута на EUR, системата продължава да записва поръчки в лева (BGN).
Проблемът
OpenCart запазва валутата на потребителя в сесията и в бисквитка (cookie). Това означава, че:
- Стари посетители, които вече имат записана бисквитка с BGN, продължават да пазаруват в лева
- Новите настройки не се прилагат автоматично за съществуващи сесии
- В базата данни се появява микс от поръчки в EUR и BGN
Решението
Най-чистият начин да форсираме винаги EUR е да модифицираме файла catalog/controller/startup/startup.php.
Намерете секцията // Currency (около ред 120-140) и заменете целия блок за обработка на валута:
Нов код:
Какво прави този код?
- Задава твърдо
EURкато валута - Записва я в сесията на потребителя
- Обновява бисквитката с новата стойност
- Игнорира всички предишни настройки и предпочитания
Важни стъпки след промяната
- Допълнения > Модификации - обновете модификациите (Refresh)
- Изчистете кеша на OpenCart от таблото (Dashboard)
- Изтрийте бисквитките в браузъра си за тест
- Проверете нова поръчка – трябва да се запише с EUR
Допълнителни настройки
Уверете се, че в Система → Настройки → Магазин → Локални:
- Основна валута е зададена на EUR
- Валута BGN е изключена и не работи
- Автоматично обновяване на валутите е изключено (ако не искате курсът да се променя)
При въпроси или нужда от съдействие, свържете се с нас.
TEDBG Екип