Freezedry
Магазин на WooCommerce, що продає сублімаційні сушарки по всьому ЄС: вісім робочих мов, правильна доставка в кожну країну й легший, швидший сайт.

Задача
У литовського магазину сублімаційних сушарок, який продає по всьому ЄС, автопереклад постійно «зависав», нові мови так і не запускались, а в кількох країнах сторінки були зламані чи порожні.
Рішення
- Переклад: знайдено справжню причину — усі рушії перекладу були вимкнені, а реєстрація зламана, — і запущено автоматичний переклад DeepL; перекладні кастомні поля, тема в 17 файлах переведена з жорстко прописаних мов на gettext, локалізовані підказки на checkout, назви ПДВ, тексти форми й підписи розмірів для кожної мови.
- Нові мови: французька, потім іспанська, італійська й фінська — разом ізо списками товарів, підписами доставки, checkout і назвами податку.
- Головна: інтеграція слайдера з безпечним відкатом на старий, окремий слайдер для кожної мови й пристрою, сторінка в адмінці, де слайдери привʼязуються до мов без коду, і інтерактивна карта Європи «де ми продали» з даних WooCommerce.
- Доставка: кошики в чотирьох країнах отримували безкоштовну доставку, бо категорії звірялись лише за литовськими та англійськими slug; тепер категорії зіставляються через шар перекладу для будь-якої мови, а товари без категорії потрапляють у лог.
- Надійність: виправлено рекурсію, через яку сторінки падали з 503, захищено 13 місць від фатальних помилок PHP 8 на порожніх полях, прибрано попередження PHP 8.2, CDN-бібліотеки закріплено на точних версіях із хешами цілісності.
- Швидкість: hero-зображення для мов — у WebP, cache-busting для CSS і JS.
- Процес: правки, зроблені прямо на продакшні, синхронізовано в git байт у байт; гілки з PR і ревʼю, деплой на staging і продакшн із бекапом бази.
Результат
Вісім мов працюють (LT, EN, DE, NL, FR, ES, IT, FI); французька запущена з усіма 32 сторінками і 26 товарами. Усі 26 товарів в Італії, Іспанії й Фінляндії тепер мають правильну доставку. Зупинено debug-лог, що розрісся до ~12 ГБ, інший лог зменшився з 194 МБ до 8,5 КБ, а hero-зображення — з ~1,5 МБ до 143 КБ.