Технічне завдання:
Оновлення цін та інтеграція аналітики на сайт
1. Проблема
На сайті відображаються застарілі ціни (останнє оновлення — 4 роки тому), що вводить клієнтів в оману. Необхідно реалізувати механізм оновлення цін або заміну функціоналу виводу цін запитом через форму. Також потрібно інтегрувати Google Analytics для відстеження ефективності сайту.
________________________________________
2. Цілі
• Забезпечити актуальні ціни на сайті або реалізувати механізм запиту ціни.
• Забезпечити зручну та безпечну форму зворотного зв’язку замість виводу ціни.
• Додати код Google Analytics для аналітики.
________________________________________
3. Варіант 1: Оновлення цін на основі Excel-документа
Функціонал:
• Імпорт Excel-файлу з актуальними цінами в адмін-панель.
• Зіставлення товарів за артикулом.
• Автоматичне оновлення цін на сайті відповідно до файлу.
Вимоги:
• Excel має містити стовпці: Артикул, Ціна.
• Якщо артикул не знайдено в базі – відображати повідомлення або ігнорувати.
• Розробити зручний інтерфейс завантаження Excel-файлу в адмінці.
________________________________________
4. Варіант 2: Приховування цін + Форма запиту
Функціонал:
• У адмін-панелі додати перемикач: "Показувати ціни" / "Запит ціни".
• Якщо перемикач вимкнено:
o Замість ціни відображається кнопка "Запитати ціну".
o Після натискання відкривається модальне вікно або нова сторінка з формою.
Форма запиту повинна включати:
• Ім'я – обов’язкове поле.
• Номер телефону – перевірка на валідність (тільки український номер або міжнародний формат, наприклад +380...).
• Email – перевірка через регулярний вираз (валидна email-адреса).
• Товар (автоматично підставляється) – приховане поле з назвою або артикулом товару.
Після відправлення:
• Дані зберігаються у БД або надсилаються на email адміністратора.
• Виводиться повідомлення: “Дякуємо! Менеджер зв’яжеться з вами найближчим часом.”
________________________________________
5. Додатково: Google Analytics
Задача:
• Встановити код Google Analytics (GA4) у <head> всіх сторінок сайту.
• Перевірити коректність відправки подій:
o Відкриття товарної сторінки.
o Натискання кнопки “Запитати ціну”.
o Відправлення форми.
________________________________________
6. Вимоги до безпеки та UX
• Всі поля форми повинні бути валідовані як на клієнтському, так і на серверному рівні.
• Захист від спаму (додати Google reCAPTCHA v2 або v3).
• Повідомлення про помилки у формі мають бути зрозумілими для користувача.
________________________________________
7. Термін виконання
• Орієнтовний термін: після погодження ТЗ.
________________________________________
8. Додатково
• Зробити резервну копію сайту перед внесенням змін.
• Протестувати новий функціонал на тестовому сервері або копії сайту.