635 lines
43 KiB
Markdown
635 lines
43 KiB
Markdown
# План действий по созданию сайта Рыбсток
|
||
|
||
## 1. Цель проекта
|
||
|
||
Создать максимально готовый интернет-магазин продуктов питания Рыбсток под ключ: быстрая витрина, удобная корзина, простое оформление заказа без регистрации, логичная гибкая админка, работа с фасовками, промокодами, доставкой по Москве и Московской области, выгрузкой прайс-листа и живыми блоками доверия.
|
||
|
||
Главный покупатель: частное лицо, семья, соседи, люди, которые покупают продукты домой крупными упаковками. Юридические лица, кафе, рестораны и магазины тоже учитываются, но интерфейс должен быть в первую очередь простым, понятным и не перегруженным.
|
||
|
||
Ключевой принцип: сайт должен быть удобен людям разного возраста, включая пожилых покупателей. Оформление заказа должно быть максимально простым, без лишних условий, регистрации, оплаты на сайте и сложных шагов.
|
||
|
||
## 2. Основные сущности сайта
|
||
|
||
### 2.1. Товары
|
||
|
||
- Около 1000 товаров.
|
||
- У товара могут быть разные фасовки и для каждой фасовки своя цена.
|
||
- Пример: горбуша неразделанная:
|
||
- упаковка 20 кг по 580 руб./кг;
|
||
- пласт 10 кг по 600 руб./кг.
|
||
- Покупка возможна только кратно выбранной фасовке.
|
||
- Если выбрана фасовка 10 кг, кнопки плюс/минус меняют количество на 10 кг.
|
||
- Для каждой фасовки хранить:
|
||
- название фасовки;
|
||
- количество;
|
||
- единицу измерения;
|
||
- цену за базовую единицу;
|
||
- цену за всю фасовку;
|
||
- доступность;
|
||
- признак публикации.
|
||
- Базовая единица по умолчанию: кг.
|
||
- В админке должна быть возможность выбрать другую базовую единицу: кг, штука, литр, упаковка и т.д.
|
||
|
||
### 2.2. Отображение цен
|
||
|
||
- Если товар продается весом и фасовка больше 1 кг, показывать цену за кг и цену за фасовку.
|
||
- Если товар имеет единственную фасовку 1 кг, не дублировать цену за упаковку 1 кг.
|
||
- Если товар штучный или имеет единственную фиксированную фасовку, например банка 320 г, показывать цену за упаковку 320 г и не пересчитывать за кг.
|
||
- В карточке-превью и в полной карточке товара должен быть выбор фасовки.
|
||
- Над выбором фасовки текст: "Выберите доступную фасовку".
|
||
- При переключении фасовки цена должна меняться сразу.
|
||
|
||
### 2.3. Категории
|
||
|
||
Основные категории для главного заголовка и меню:
|
||
|
||
- Рыба;
|
||
- Готовая продукция;
|
||
- Полуфабрикаты;
|
||
- Мясо;
|
||
- Сыры;
|
||
- Ягоды;
|
||
- Овощи.
|
||
|
||
Нужны категории и подкатегории. Подкатегории визуально отделить от категорий, например более мягким цветом, меньшим шрифтом или отступом.
|
||
|
||
## 3. Структура сайта
|
||
|
||
### 3.1. Главная страница
|
||
|
||
Первый экран:
|
||
|
||
- Название/позиционирование Рыбсток.
|
||
- Заголовок про ассортимент: рыба, готовая продукция, полуфабрикаты, мясо, сыры, ягоды, овощи с доставкой по Москве и Московской области.
|
||
- Заметное сообщение: "Работаем без предоплаты. Оплата только при получении товара."
|
||
- Поиск по сайту.
|
||
- Быстрый переход в полный каталог.
|
||
- Понятная кнопка "Доставка и оплата".
|
||
- Верхнее меню с категориями и подкатегориями.
|
||
|
||
Первый скролл:
|
||
|
||
- Три понятных блока с картинками:
|
||
- бесплатная доставка внутри МКАД;
|
||
- доставка за МКАД;
|
||
- самовывоз.
|
||
- Блок популярных товаров: около 10 товаров из разных категорий и подкатегорий.
|
||
- Популярные товары должны быть частично случайными при каждом посещении, но с приоритетом более покупаемых за последнее время.
|
||
- В админке нужна возможность вручную закреплять или полностью собирать популярные товары.
|
||
- Ссылка на полный каталог.
|
||
|
||
Блок доверия и свежести:
|
||
|
||
- Рейтинг Яндекс.Карт.
|
||
- Отзывы Яндекс.Карт только 5 звезд.
|
||
- Автоматическая дата последнего поступления товара: текущий рабочий день.
|
||
- В выходные и официальные праздничные дни дата должна показывать последний рабочий день.
|
||
- Виртуальные счетчики температуры:
|
||
- морозильная камера: примерно от -18 до -20 градусов;
|
||
- холодильная камера: примерно от -2 до +1 градуса.
|
||
- Температура должна периодически слегка меняться и выглядеть реалистично.
|
||
- Текст про склад:
|
||
- морозильные камеры более 1800 кв. м;
|
||
- холодильные камеры более 500 кв. м.
|
||
- Небольшой, но убедительный модуль фото склада.
|
||
|
||
Дополнительные блоки:
|
||
|
||
- Акции: товары выбираются вручную в админке.
|
||
- Мягкое описание для частных покупателей.
|
||
- Неброское упоминание для юридических лиц: работаем с юрлицами, безналичный расчет +8%, счета от 15000 руб.
|
||
- Неброское упоминание систем Меркурий и Честный знак: часть ассортимента проходит через эти системы.
|
||
- Небольшая ссылка на условия возврата.
|
||
|
||
### 3.2. Полный каталог
|
||
|
||
- Слева лаконичное закрепленное меню категорий и подкатегорий.
|
||
- Меню должно оставаться доступным при скролле.
|
||
- В основной области сразу отображаются товары с пагинацией или удобной подгрузкой.
|
||
- Карточка-превью товара должна включать:
|
||
- изображение;
|
||
- название;
|
||
- выбор фасовки;
|
||
- цену за базовую единицу, если это уместно;
|
||
- цену за выбранную фасовку;
|
||
- кнопку добавления в корзину именно выбранной фасовки;
|
||
- кнопку сравнения;
|
||
- доступность/публикацию.
|
||
|
||
### 3.3. Страница категории и подкатегории
|
||
|
||
- Слева закрепленное меню категорий и подкатегорий.
|
||
- Сначала товары, потом SEO/описательный текст, чтобы текст не мешал покупателю выбирать.
|
||
- Карточки товара такие же, как в полном каталоге.
|
||
|
||
### 3.4. Страница товара
|
||
|
||
- Фото товара.
|
||
- Название.
|
||
- Выбор фасовки.
|
||
- Цена за базовую единицу, если применимо.
|
||
- Цена за выбранную фасовку.
|
||
- Количество с шагом выбранной фасовки.
|
||
- Кнопка "В корзину".
|
||
- Описание и информация о товаре.
|
||
- Блок "С этим товаром приобретают" не менее 15 товаров.
|
||
- Товары в блоке могут быть случайными, но желательно учитывать совместные покупки и категорию.
|
||
|
||
### 3.5. Сравнение товаров
|
||
|
||
- До 10 товаров в списке сравнения.
|
||
- Формат: простой список с превью.
|
||
- Из списка можно перейти к товару, добавить товар в корзину, удалить товар из сравнения.
|
||
- Внизу кнопка "Сбросить список сравнения".
|
||
- Логика должна быть похожа на избранное/отложенные товары, чтобы покупатель мог сначала собрать варианты, а потом выбрать.
|
||
|
||
### 3.6. Поиск
|
||
|
||
- Очень понятная строка поиска.
|
||
- Морфологический поиск: склонения, формы слов, ошибки, ассоциации.
|
||
- Голосовой ввод.
|
||
- Нужна короткая инструкция рядом с поиском или внутри модального окна помощи.
|
||
- Поиск должен быть удобен пожилым пользователям: крупное поле, понятные подсказки, простые результаты.
|
||
|
||
### 3.7. Корзина
|
||
|
||
- Корзина без регистрации.
|
||
- Изменение количества только кратно фасовке.
|
||
- Промокод:
|
||
- поле ввода;
|
||
- кнопка применить;
|
||
- кнопка аннулировать промокод.
|
||
- Указать, что промокоды действуют при наличном расчете.
|
||
- Указать, что весовые товары могут быть пересчитаны при передаче клиенту.
|
||
- Минимальную сумму заказа не показывать и не блокировать оформление.
|
||
- Покупатель может оформить любой заказ, после чего менеджер свяжется и при необходимости уточнит детали.
|
||
|
||
### 3.8. Оформление заказа
|
||
|
||
Обязательные поля:
|
||
|
||
- Имя;
|
||
- телефон;
|
||
- тип получения:
|
||
- доставка внутри МКАД;
|
||
- доставка за МКАД;
|
||
- самовывоз.
|
||
|
||
Необязательные поля:
|
||
|
||
- адрес;
|
||
- email;
|
||
- комментарий;
|
||
- желаемая дата получения.
|
||
|
||
Не нужно:
|
||
|
||
- ФИО;
|
||
- выбор оплаты;
|
||
- оплата на сайте;
|
||
- SMS.
|
||
|
||
На странице можно просто описать доступные способы оплаты:
|
||
|
||
- для физических лиц: наличные или QR-код при получении;
|
||
- заказ на сайте является предзаказом;
|
||
- оплата не требуется ни на одной странице сайта.
|
||
|
||
После оформления:
|
||
|
||
- если указан email, клиенту отправляется письмо с заказом, суммой, фасовками и составом заказа;
|
||
- администратору отправляется копия заказа на email, который будет указан позже;
|
||
- клиент видит страницу благодарности.
|
||
|
||
Текст благодарности в мягкой редакции:
|
||
|
||
"Спасибо, ваш заказ принят.
|
||
|
||
Мы благодарим вас за доверие к Рыбсток. Доставка и самовывоз выполняются после подтверждения заказа по телефону: так мы сможем уточнить наличие, фасовки и удобное время получения.
|
||
|
||
Если заказ оформлен сегодня до 14:00, мы свяжемся с вами в течение этого дня. Если заказ оформлен после 14:00, мы перезвоним на следующий рабочий день с 10:00 до 14:00.
|
||
|
||
Если вы указали желаемую дату получения, мы свяжемся с вами в этот день.
|
||
|
||
Суббота и воскресенье - выходные. Заказы, оформленные в пятницу после 14:00, обрабатываются в понедельник.
|
||
|
||
Если вопрос срочный, пожалуйста, позвоните нам: +7-977-736-33-63."
|
||
|
||
### 3.9. Личный кабинет и история заказов
|
||
|
||
- Регистрация не обязательна.
|
||
- История заказов хранится по email.
|
||
- Если клиент хочет посмотреть историю, он вводит email.
|
||
- На email приходит код входа.
|
||
- SMS не используются.
|
||
- Интерфейс максимально простой:
|
||
- ввести email;
|
||
- получить код;
|
||
- ввести код;
|
||
- увидеть список заказов.
|
||
- Если email при заказе не указан, история по email не сохраняется.
|
||
|
||
### 3.10. Доставка
|
||
|
||
#### Внутри МКАД
|
||
|
||
- От 5000 руб. - бесплатно.
|
||
- От 2000 до 5000 руб. - 599 руб.
|
||
- Минимальную сумму заказа на сайте не показывать как ограничение и не блокировать заказ.
|
||
|
||
#### За МКАД
|
||
|
||
Пользователь вводит адрес доставки. Расстояние от МКАД нужно считать по дороге, желательно через Яндекс.Карты.
|
||
|
||
Логика:
|
||
|
||
- до 10 км от МКАД: бесплатная доставка от 10000 руб.;
|
||
- от 10 км и дальше: сумма для бесплатной доставки равна расстояние в км * 1000 руб.;
|
||
- если заказ не проходит на бесплатную доставку: доставка = расстояние в км * 60 руб. + 199 руб.
|
||
|
||
Примеры:
|
||
|
||
- 15 км от МКАД: бесплатная доставка от 15000 руб.; иначе 15 * 60 + 199 = 1099 руб.
|
||
- 100 км от МКАД: бесплатная доставка от 100000 руб.; иначе 100 * 60 + 199 = 6199 руб.
|
||
|
||
Дополнительно:
|
||
|
||
- подъем до квартиры/офиса: 390 руб.;
|
||
- радиус: Московская область, близлежащие области по договоренности;
|
||
- доставка и самовывоз только после подтверждения заказа по телефону.
|
||
|
||
### 3.11. Самовывоз
|
||
|
||
- Понедельник - пятница: 18:00-21:00.
|
||
- Только после подтверждения заказа.
|
||
- Минимальную сумму заказа не использовать как блокировку.
|
||
|
||
### 3.12. Промокоды
|
||
|
||
Промокоды должны поддерживать:
|
||
|
||
- фиксированную скидку;
|
||
- процентную скидку;
|
||
- минимальную сумму заказа;
|
||
- ограничение по категориям;
|
||
- ограничение по подкатегориям;
|
||
- ограничение по отдельным товарам;
|
||
- срок действия;
|
||
- включение/выключение;
|
||
- видимость на сайте;
|
||
- ручное выделение в админке.
|
||
|
||
Стартовые промокоды:
|
||
|
||
- Рыбсток7000: 300 руб. при заказе от 7000 руб.;
|
||
- Рыбсток20000: 5% при заказе от 20000 руб.;
|
||
- Рыбсток50000: 7% при заказе от 50000 руб.
|
||
|
||
Важно: промокоды действуют при наличном расчете.
|
||
|
||
### 3.13. Популярные товары и рекомендации
|
||
|
||
Популярные товары:
|
||
|
||
- около 10 товаров на главной;
|
||
- из разных категорий и подкатегорий;
|
||
- случайно обновляются при новом посещении;
|
||
- приоритет у более покупаемых за последнее время;
|
||
- админ может корректировать, закреплять или собирать блок вручную.
|
||
|
||
"С этим товаром приобретают":
|
||
|
||
- не менее 15 товаров;
|
||
- название именно "С этим товаром приобретают";
|
||
- случайный выбор с возможностью улучшить алгоритм на основе заказов.
|
||
|
||
### 3.14. Отзывы Яндекс.Карт
|
||
|
||
- На главной странице показывать рейтинг Яндекс.Карт.
|
||
- Отображать только отзывы с оценкой 5 звезд.
|
||
- Нужно проверить техническую и юридическую возможность получения отзывов через API/виджет Яндекса.
|
||
- Если API не позволяет фильтровать отзывы, предусмотреть ручной блок отзывов в админке с ссылкой на Яндекс.Карты.
|
||
|
||
### 3.15. Прайс-лист
|
||
|
||
- В админке должна быть кнопка выгрузки прайс-листа в Excel.
|
||
- В прайс попадают только опубликованные позиции.
|
||
- Должны отображаться цены на разные фасовки.
|
||
- Выгрузка должна быть в текущем времени, одним нажатием.
|
||
- Желательно хранить дату и время последней выгрузки.
|
||
|
||
## 4. Админка
|
||
|
||
Админка должна быть логичной, быстрой и гибкой.
|
||
|
||
Минимальные разделы:
|
||
|
||
- Товары;
|
||
- Категории и подкатегории;
|
||
- Фасовки и цены;
|
||
- Заказы;
|
||
- Промокоды;
|
||
- Акции;
|
||
- Популярные товары;
|
||
- Отзывы;
|
||
- Настройки доставки;
|
||
- Настройки писем;
|
||
- Прайс-лист;
|
||
- Контентные страницы;
|
||
- Настройки живых счетчиков.
|
||
|
||
Функции админки:
|
||
|
||
- создавать и редактировать товары;
|
||
- управлять публикацией товаров;
|
||
- управлять фасовками и разными ценами;
|
||
- выбирать базовую единицу товара;
|
||
- управлять категориями и подкатегориями;
|
||
- смотреть заказы и менять статусы;
|
||
- создавать промокоды для всего сайта, категорий, подкатегорий и товаров;
|
||
- выделять промокоды на сайте;
|
||
- вручную управлять акциями;
|
||
- вручную корректировать популярные товары;
|
||
- выгружать прайс в Excel;
|
||
- управлять текстами писем;
|
||
- задавать email администратора для копий заказов.
|
||
|
||
## 5. Вопросы, которые стоит уточнить перед разработкой
|
||
|
||
1. На какой платформе быстрее запускать проект: Laravel/Filament, WordPress/WooCommerce с доработками, 1C-Bitrix, Django, Next.js + готовая админка или другая связка?
|
||
2. Есть ли уже текущий сайт, каталог, база товаров, Excel/CSV с товарами и фотографиями?
|
||
3. Как сейчас хранятся товары: в Excel, 1С, МойСклад, вручную, в другой CMS?
|
||
4. Нужно ли интегрироваться с 1С, МойСкладом или другой учетной системой?
|
||
5. Нужен ли онлайн-остаток товара или достаточно статуса "в наличии/под заказ"?
|
||
6. Нужны ли статусы заказов для клиента: принят, подтвержден, собран, передан, завершен?
|
||
7. Какие письма нужны клиенту кроме письма о создании заказа?
|
||
8. Какой email администратора использовать для копий заказов?
|
||
9. Нужна ли отправка заказов в Telegram администратору, если SMS не используем?
|
||
10. Нужна ли капча или другая защита от спама в оформлении заказа?
|
||
11. Какие способы оплаты точно описывать на сайте: наличные, QR, безнал для юрлиц?
|
||
12. Нужны ли отдельные цены для физлиц и юрлиц?
|
||
13. Как округлять стоимость доставки за МКАД: километры округлять вверх, до десятых или по данным Яндекс.Карт?
|
||
14. Что делать, если Яндекс.Карты не смогли определить адрес?
|
||
15. Нужно ли сохранять расчет доставки в заказе или только показывать клиенту предварительно?
|
||
16. Нужен ли ручной пересчет доставки администратором в заказе?
|
||
17. Как учитывать подъем 390 руб.: отдельной галочкой в корзине или только текстом?
|
||
18. Нужен ли выбор даты доставки в календаре?
|
||
19. Нужно ли запрещать выбор выходных и праздников в календаре?
|
||
20. Где брать производственный календарь РФ: встроенный список, API или ручная настройка в админке?
|
||
21. Какой должен быть внешний стиль: более премиальный, складской/оптовый, домашний семейный или нейтральный продуктовый?
|
||
22. Есть ли брендбук, логотип, цвета, шрифты?
|
||
23. Какие фотографии склада и товаров уже есть?
|
||
24. Нужно ли добавлять водяные знаки на изображения?
|
||
25. Нужны ли SEO-страницы для категорий и подкатегорий?
|
||
26. Нужна ли микроразметка товаров для поисковиков?
|
||
27. Нужны ли фильтры: цена, фасовка, категория, наличие, производитель, страна, тип обработки, заморозка?
|
||
28. Нужны ли бейджи: акция, хит, новинка, выгодная фасовка, свежая поставка?
|
||
29. Нужна ли функция "повторить заказ" в истории заказов?
|
||
30. Нужно ли администратору вручную создавать заказ из админки по телефону?
|
||
31. Нужны ли разные роли в админке: владелец, менеджер, контент-менеджер?
|
||
32. Нужно ли логировать изменения цен и товаров?
|
||
33. Нужно ли показывать покупателю предупреждение, что итог по весовым товарам может измениться?
|
||
34. Нужна ли интеграция с Яндекс.Метрикой и целями оформления заказа?
|
||
35. Нужна ли интеграция с Google Analytics или только Яндекс.Метрика?
|
||
36. Нужно ли подключать онлайн-чат или кнопку WhatsApp/Telegram/телефон?
|
||
37. Какие страницы обязательны юридически: политика конфиденциальности, пользовательское соглашение, возврат, контакты?
|
||
38. Нужно ли согласие на обработку персональных данных при оформлении заказа?
|
||
39. Нужно ли хранить историю согласий на обработку персональных данных?
|
||
40. Какой срок хранения кодов входа по email: 10 минут, 15 минут, 30 минут?
|
||
|
||
## 6. Дополнительные простые идеи для улучшения
|
||
|
||
- Кнопка "Повторить прошлый заказ" в истории заказов.
|
||
- Блок "Часто берут для семьи" на главной.
|
||
- Бейдж "Выгодно на большую семью" для крупных фасовок.
|
||
- Бейдж "Без предоплаты" рядом с корзиной и оформлением заказа.
|
||
- Быстрые подсказки в поиске: "горбуша", "креветки", "сыр", "ягоды".
|
||
- Голосовой поиск с кнопкой-микрофоном и короткой подсказкой.
|
||
- Блок "Сегодня принимаем заказы 24/7, подтверждаем по телефону".
|
||
- В корзине подсказка: "Можно оформить как есть - менеджер уточнит фасовки и наличие".
|
||
- В админке быстрый режим редактирования цен прямо в списке товаров.
|
||
- В админке массовое включение/выключение публикации.
|
||
- В админке массовое изменение категории, подкатегории и базовой единицы.
|
||
- Импорт товаров из Excel/CSV.
|
||
- Экспорт заказов в Excel.
|
||
|
||
## 7. Предлагаемый технический подход
|
||
|
||
Так как нужна быстрая сборка под ключ с логичной админкой, гибкими товарами и возможностью доработки программистом, оптимальные варианты:
|
||
|
||
### Вариант A: Laravel + Filament
|
||
|
||
Подходит, если нужен индивидуальный проект с сильной админкой, гибкими фасовками, промокодами, заказами и прайсами.
|
||
|
||
Плюсы:
|
||
|
||
- быстрая мощная админка;
|
||
- гибкая база данных;
|
||
- удобно дорабатывать;
|
||
- легко сделать Excel-выгрузку;
|
||
- хорошо подходит для кастомной логики доставки и фасовок.
|
||
|
||
Минусы:
|
||
|
||
- больше разработки, чем на готовой CMS.
|
||
|
||
### Вариант B: WordPress + WooCommerce + доработки
|
||
|
||
Подходит, если важнее очень быстрый запуск на готовой базе.
|
||
|
||
Плюсы:
|
||
|
||
- быстро поднять витрину;
|
||
- много готовых модулей;
|
||
- понятная админка.
|
||
|
||
Минусы:
|
||
|
||
- сложная кастомная логика фасовок, доставки и промокодов может потребовать много доработок;
|
||
- админка может стать менее аккуратной при большом количестве плагинов.
|
||
|
||
### Рекомендация
|
||
|
||
Для проекта Рыбсток лучше выбрать Laravel + Filament, если цель - надежный сайт с гибкой логикой и понятной админкой, который можно быстро дорабатывать. Если нужно запуститься максимально срочно любой ценой, можно рассмотреть WooCommerce, но сложность фасовок и доставки делает индивидуальную разработку предпочтительнее.
|
||
|
||
## 8. Пошаговый план работ
|
||
|
||
### Этап 1. Уточнение и фиксация требований
|
||
|
||
1. Подтвердить платформу.
|
||
2. Получить текущий каталог товаров, фото, категории, фасовки и цены.
|
||
3. Уточнить формат импорта: Excel, CSV, вручную.
|
||
4. Уточнить email администратора.
|
||
5. Уточнить дизайн-направление и наличие логотипа.
|
||
6. Уточнить способ интеграции Яндекс.Карт.
|
||
7. Уточнить юридические страницы и тексты.
|
||
|
||
### Этап 2. Проектирование
|
||
|
||
1. Спроектировать структуру базы данных:
|
||
- товары;
|
||
- фасовки;
|
||
- категории;
|
||
- заказы;
|
||
- позиции заказов;
|
||
- промокоды;
|
||
- пользователи/история по email;
|
||
- отзывы;
|
||
- настройки.
|
||
2. Спроектировать логику расчета цен и шагов количества.
|
||
3. Спроектировать логику доставки.
|
||
4. Спроектировать админку.
|
||
5. Спроектировать страницы сайта.
|
||
|
||
### Этап 3. Быстрая обложка и витрина
|
||
|
||
1. Сделать главную страницу.
|
||
2. Сделать каталог.
|
||
3. Сделать страницу категории.
|
||
4. Сделать карточку товара.
|
||
5. Сделать адаптивный интерфейс для мобильных и desktop.
|
||
6. Добавить базовые блоки доверия, доставки, оплаты, свежести.
|
||
|
||
### Этап 4. Каталог, фасовки и корзина
|
||
|
||
1. Реализовать товары с фасовками.
|
||
2. Реализовать переключение фасовок в карточках.
|
||
3. Реализовать добавление в корзину выбранной фасовки.
|
||
4. Реализовать изменение количества кратно фасовке.
|
||
5. Реализовать предупреждение о весовых товарах.
|
||
|
||
### Этап 5. Оформление заказа
|
||
|
||
1. Реализовать простую форму заказа.
|
||
2. Добавить выбор способа получения.
|
||
3. Добавить расчет доставки.
|
||
4. Добавить письмо клиенту при наличии email.
|
||
5. Добавить письмо администратору.
|
||
6. Добавить страницу благодарности.
|
||
|
||
### Этап 6. Админка
|
||
|
||
1. Раздел товаров.
|
||
2. Раздел категорий.
|
||
3. Раздел фасовок и цен.
|
||
4. Раздел заказов.
|
||
5. Раздел промокодов.
|
||
6. Раздел популярных товаров и акций.
|
||
7. Раздел отзывов.
|
||
8. Раздел настроек доставки.
|
||
9. Раздел выгрузки прайса.
|
||
|
||
### Этап 7. Поиск, сравнение и история
|
||
|
||
1. Реализовать морфологический поиск.
|
||
2. Добавить голосовой ввод.
|
||
3. Реализовать список сравнения до 10 товаров.
|
||
4. Реализовать историю заказов по email-коду.
|
||
|
||
### Этап 8. Интеграции
|
||
|
||
1. Подключить Яндекс.Карты для адресов и расчета расстояния за МКАД.
|
||
2. Подключить Яндекс.Метрику.
|
||
3. Подключить рейтинг/отзывы Яндекс.Карт или ручной блок отзывов.
|
||
4. Настроить email-отправку.
|
||
5. Настроить производственный календарь или ручные нерабочие дни.
|
||
|
||
### Этап 9. Прайс-лист
|
||
|
||
1. Реализовать выгрузку Excel.
|
||
2. Включать только опубликованные товары.
|
||
3. Показывать все фасовки и цены.
|
||
4. Добавить кнопку в админке.
|
||
|
||
### Этап 10. Тестирование и запуск
|
||
|
||
1. Проверить мобильную версию.
|
||
2. Проверить desktop-версию.
|
||
3. Проверить добавление товаров с разными фасовками.
|
||
4. Проверить расчет доставки внутри МКАД.
|
||
5. Проверить расчет доставки за МКАД.
|
||
6. Проверить оформление заказа без email.
|
||
7. Проверить оформление заказа с email.
|
||
8. Проверить письма клиенту и администратору.
|
||
9. Проверить промокоды.
|
||
10. Проверить выгрузку прайса.
|
||
11. Проверить админку.
|
||
12. Запустить сайт.
|
||
|
||
## 9. Финальный промпт для разработки сайта
|
||
|
||
Нужно разработать интернет-магазин Рыбсток под ключ. Это сайт продуктов питания с крупными фасовками, рассчитанный в первую очередь на частных покупателей: семьи, соседей, людей, которые покупают продукты домой и делят упаковки между собой. Юридические лица, кафе, рестораны и магазины тоже важны, но интерфейс должен быть максимально простым, понятным и дружелюбным для обычных покупателей, включая пожилых людей.
|
||
|
||
Нужна быстрая готовая версия сайта с логичной гибкой админкой, чтобы владелец мог быстро управлять товарами, фасовками, ценами, промокодами, акциями, популярными товарами, заказами и выгрузкой прайс-листа.
|
||
|
||
Сайт должен включать:
|
||
|
||
1. Главную страницу с каталогом, поиском, меню категорий и подкатегорий, блоками доставки, акциями, популярными товарами, рейтингом Яндекс.Карт, отзывами 5 звезд, блоками доверия, датой последнего поступления, виртуальными счетчиками температуры камер и заметным сообщением "Работаем без предоплаты. Оплата только при получении товара".
|
||
2. Полный каталог с левым закрепленным меню категорий и подкатегорий, товарами, пагинацией/подгрузкой и карточками-превью.
|
||
3. Страницы категорий и подкатегорий с товарами сверху и текстом под товарами.
|
||
4. Карточку товара с фото, описанием, выбором фасовки, ценой за базовую единицу и ценой за фасовку, количеством с шагом выбранной фасовки, кнопкой покупки и блоком "С этим товаром приобретают" минимум на 15 товаров.
|
||
5. Корзину без регистрации, с промокодом, отменой промокода, расчетом суммы, предупреждением о возможном пересчете весовых товаров и простым оформлением заказа.
|
||
6. Оформление заказа с обязательными полями: имя, телефон, выбор "доставка внутри МКАД / доставка за МКАД / самовывоз". Адрес и email необязательны. ФИО, выбор оплаты и онлайн-оплата не нужны.
|
||
7. После оформления заказа клиент видит страницу благодарности, получает письмо на email, если указал email, а администратор получает копию заказа на свой email.
|
||
8. Историю заказов по email: клиент вводит email, получает код на email, вводит код и видит свои заказы. SMS не использовать.
|
||
9. Сравнение товаров до 10 позиций в формате простого списка с превью и кнопкой сброса.
|
||
10. Умный морфологический поиск со склонениями, ассоциациями, опечатками и голосовым вводом.
|
||
11. Админку для товаров, категорий, фасовок, заказов, промокодов, акций, популярных товаров, отзывов, настроек доставки, email и прайс-листа.
|
||
12. Выгрузку прайс-листа в Excel одним нажатием. В прайс попадают только опубликованные товары, включая все фасовки и цены.
|
||
|
||
Товары:
|
||
|
||
- около 1000 товаров;
|
||
- у товара может быть несколько фасовок;
|
||
- у каждой фасовки своя цена;
|
||
- покупка только кратно выбранной фасовке;
|
||
- базовая единица по умолчанию кг, но в админке можно выбрать кг, штука, литр, упаковка и другие единицы;
|
||
- если товар имеет фасовку больше 1 кг, показывать цену за кг и цену за упаковку;
|
||
- если товар имеет единственную фасовку 1 кг, не дублировать цену за упаковку;
|
||
- если товар штучный или фиксированной фасовки, например банка 320 г, показывать цену за упаковку 320 г и не пересчитывать за кг.
|
||
|
||
Доставка:
|
||
|
||
- внутри МКАД: от 5000 руб. бесплатно, от 2000 до 5000 руб. - 599 руб.;
|
||
- минимальную сумму заказа на сайте не показывать как ошибку и не блокировать оформление;
|
||
- за МКАД пользователь вводит адрес, расстояние от МКАД считать по дороге через Яндекс.Карты;
|
||
- до 10 км от МКАД бесплатная доставка от 10000 руб.;
|
||
- от 10 км и дальше сумма бесплатной доставки = расстояние в км * 1000 руб.;
|
||
- если заказ не проходит на бесплатную доставку, доставка = расстояние в км * 60 руб. + 199 руб.;
|
||
- пример 15 км: бесплатно от 15000 руб., иначе 1099 руб.;
|
||
- пример 100 км: бесплатно от 100000 руб., иначе 6199 руб.;
|
||
- самовывоз понедельник - пятница 18:00-21:00, только после подтверждения;
|
||
- доставка и самовывоз только после подтверждения заказа по телефону.
|
||
|
||
Промокоды:
|
||
|
||
- фиксированная скидка и процентная скидка;
|
||
- применяются к заказу, категории, подкатегории или отдельным товарам;
|
||
- можно задавать минимальную сумму, срок действия, активность и видимость;
|
||
- стартовые промокоды: Рыбсток7000, Рыбсток20000, Рыбсток50000;
|
||
- указать, что промокоды действуют при наличном расчете.
|
||
|
||
Живые блоки:
|
||
|
||
- автоматическая дата последнего поступления товара: текущий рабочий день, без выходных и официальных праздников;
|
||
- виртуальная температура морозильной камеры: от -18 до -20 градусов;
|
||
- виртуальная температура холодильной камеры: от -2 до +1 градуса;
|
||
- значения должны периодически немного меняться и выглядеть реалистично;
|
||
- текст про склад: морозильные камеры более 1800 кв. м, холодильные более 500 кв. м;
|
||
- модуль фото склада.
|
||
|
||
Дизайн:
|
||
|
||
- лаконичный, понятный, продуктовый, аккуратный;
|
||
- без лишней перегруженности;
|
||
- крупные понятные элементы;
|
||
- удобство для пожилых пользователей;
|
||
- акцент на бесплатную доставку, отсутствие предоплаты, доверие, свежесть, надежность;
|
||
- сайт должен выглядеть живым, рабочим и регулярно обновляемым.
|
||
|
||
Нужно сначала спроектировать структуру, базу данных, страницы, админку и логику, затем реализовать проект поэтапно, проверяя корзину, фасовки, доставку, промокоды, письма, прайс-лист и адаптивность.
|
||
|
||
## 10. Ближайший следующий шаг
|
||
|
||
Перед кодом нужно выбрать платформу и получить исходные данные по каталогу. Рекомендуемый следующий шаг: принять решение по технической связке и подготовить структуру базы данных/моделей для товаров, фасовок, заказов, промокодов и доставки.
|