Техническая поддержка и доработка интернет-магазина мебели MCL.md — комплекты, доставка, мобильная версия
О проекте
О проекте
MCL.md — интернет-магазин мебели ML-Mobila в Молдове, работающий с розничными и оптовыми покупателями. Каталог включает отдельные предметы мебели, товары с несколькими цветами и артикулами, готовые наборы и модульные комплекты, состав которых покупатель может подбирать самостоятельно.
Магазин работает на Webasyst и Shop-Script с темой Unishop. В истории проекта за 2021–2026 годы собраны перенос и настройка сайта, развитие комплектов мебели, доработка фотографий вариантов, отображения наличия, мобильной навигации, поиска и доставки. При изменении оформления заказа также учитывалась существующая связь магазина с 1С.
Для мебельного магазина важно согласовать несколько связанных сценариев: выбранный цвет должен соответствовать фотографии и остатку, комплект — содержать нужные позиции и количества, а доставка — учитывать адрес покупателя. Ниже описаны выполненные и принятые изменения. Дополнительные требования и обращения без подтверждённого завершения выделены в отдельный раздел.
Что дорабатывали
- Перенос магазина и подготовка рабочих данных
- Комплекты мебели, состав набора и добавление в корзину
- Фотографии цветов и выбор вариантов товара
- Наличие по артикулам в поиске, корзине и комплектах
- Мобильное меню, фиксированная шапка и языковые страницы
- Поиск по каталогу и отображение результатов
- Перенос модуля доставки и сопровождение адресных полей
- Административная панель и технические настройки безопасности
- Дополнительные требования и обращения
- Итоги и похожие задачи
Перенос магазина и подготовка рабочих данных
Развёртывание, тестирование и настройка
На этапе 2021 года выполнили копирование магазина на основе проекта «Мебель Урала» на хостинг заказчика, тестирование и настройку для MCL.md. Этот этап стал основой дальнейших изменений темы, мобильного интерфейса и функциональности мебельных комплектов.
Очистка данных исходного магазина
После копирования удалили старые заказы и контакты исходного проекта. Для нового магазина настроили начало нумерации заказов с согласованного номера 548. Эти работы отмечены как выполненные и принятые.
Подготовка данных позволила отделить рабочую историю ML-Mobila от информации магазина, использованного в качестве основы.
Комплекты мебели, состав набора и добавление в корзину
Выбор элементов модульной мебели
Доработали вывод модуля комплектов в карточке товара. Покупатель получает список элементов системы с фотографиями, названиями, размерами, ценами и управлением количеством. В требованиях была задана логика выбора: невыбранная позиция имеет количество 0, увеличение количества добавляет её в комплект, а уменьшение ниже 1 исключает из состава.
Блок сборки перенесли из вкладок ниже основного содержимого карточки. Для просмотра дополнительных элементов добавили подгрузку через кнопку «Показать ещё» с оформлением, согласованным с товарными карточками.
Из интерфейса убрали действие «Выбрать всё» и сократили лишние отступы в мобильном представлении. Выбор состава должен оставаться понятным и на небольшом экране.
Цена комплекта в каталоге и поиске
Настроили отображение цены комплекта в списке категории. При проверке обнаружилось, что изменение затронуло обычные товары и у них появилась нулевая цена. Этот сценарий скорректировали; задача отмечена как принятая.
Отдельно исправили вывод цены комплекта в мобильных результатах поиска. Для покупателя стоимость набора должна быть доступна до перехода в его карточку.
Передача состава в корзину
Дорабатывали добавление комплекта в корзину и отображение подтверждения. В обращениях были ситуации, когда из категории добавлялся обычный товар вместо комплекта, а в карточке показывалась одна позиция вместо списка выбранных элементов.
Для этих сценариев настроили работу с составом набора и окно подтверждения добавления. Также исправили переход к выбору комплекта, который ранее не открывался по соответствующей кнопке. В журнале эти изменения отмечены как выполненные или принятые.
Позднее появились дополнительные требования к комплектам на уровне отдельных вариантов и цветов, а также обращения по повторной подгрузке элементов. Они описаны ниже как отдельные задачи развития.
Фотографии цветов и выбор вариантов товара
Выбор варианта по фотографии
В феврале 2025 года выполнили доработку выбора вариантов товара: вместо текстового перечисления в карточке появились квадратные фотографии цветов в формате 1:1.
- В основном ряду выводятся четыре варианта.
- При наличии дополнительных цветов используется плитка «Ещё» такого же размера с количеством оставшихся вариантов.
- При наведении на вариант отображается его цена.
- В первую очередь показываются варианты с большим остатком.
- Фотографии вариантов без наличия отображаются более тускло.
- Над фотографиями выводятся названия цветов.
Такой выбор особенно важен для мебели: покупатель сопоставляет цвет с изображением, а стоимость и доступность оценивает для конкретного варианта.
Варианты товара в списке категории
Вывод фотографий вариантов добавили и под товаром в каталоге. Покупатель может увидеть доступные исполнения при просмотре категории, не открывая каждую карточку отдельно.
В этом же блоке работ добавили кнопку «Показать ещё» для категорий, сохранив обычную постраничную навигацию. Доработка от февраля 2025 года отмечена как завершённая.
Наличие по артикулам в поиске, корзине и комплектах
Остатки в разных точках покупки
Добавили отображение наличия в результатах поиска, выпадающей корзине и боковом списке товаров. Информация о доступности стала видна там, где покупатель выбирает позицию или проверяет состав покупки.
Отдельно выполнены и приняты вывод остатков для артикулов и добавление названия выбранного артикула. Для товара с несколькими цветами это помогает различать конкретные исполнения.
Обновление наличия при смене цвета
Исправили обращение по некорректному отображению наличия у элементов комплекта при смене характеристики или цвета. В проверочном примере статус и его цвет не соответствовали выбранному исполнению. Исправление этого сценария отмечено как выполненное.
Дополнительные требования к остатку выбранного артикула в основной корзине и отдельной цветовой индикации малого количества вынесены в раздел дальнейших обращений.
Мобильное меню, фиксированная шапка и языковые страницы
Фиксированная шапка на телефоне и компьютере
Доработали фиксированную шапку для мобильной и настольной версий. В мобильном варианте предусмотрены кнопка меню с фоном, логотип, телефон, поиск и доступ к личному кабинету. Корзина сохраняла предусмотренное для неё расположение в нижней части интерфейса.
Для мобильной шапки согласовали появление при прокрутке вниз и скрытие при прокрутке вверх. На компьютере фиксированное меню появляется при прокрутке, а в верхней части страницы остаётся стандартная шапка. Цвета элементов связаны с основными цветами темы; для настольного меню предусмотрено визуальное отделение тенью.
В составе этого этапа дорабатывались раскрытие телефонных номеров, открытие поиска с затемнением страницы, показ результатов под полем ввода и доступная кнопка с лупой. Проверялось также отображение списка товаров при наведении на корзину. Работы по фиксированной шапке отмечены как выполненные и принятые.
Категории, контакты и социальные ссылки в мобильном меню
В мобильное меню добавили иконки категорий. При доработке учитывали отличие иконок от товарных изображений: если для категории иконка не задана, она не должна заменяться случайной картинкой. Вывод согласовали и с настольным меню.
Добавили блок телефонных номеров и социальные ссылки. Для социальных элементов скорректировали расположение: они должны находиться в конце главного меню, а не оставаться поверх содержимого при переходе в каталог.
Исправили прокрутку главного мобильного меню. Телефонный блок доработали с раскрывающимся списком номеров.
Страницы на разных языках и личный кабинет
Настроили вывод информационных страниц из приложения магазина, чтобы меню учитывало смену языка. Вывод страниц для разных языковых версий отмечен как принятый.
Добавили авторизацию и переход в личный кабинет после входа пользователя. Отдельные вопросы перевода текстов темы через MyLang и работы обратного звонка остались самостоятельными обращениями.
Поиск по каталогу и отображение результатов
Восстановление подсказок на мобильных устройствах
В мае 2022 года исправили отображение предварительных результатов поиска. Сам поиск находил товары, но на мобильном устройстве под полем ввода не появлялся список найденных товаров или категорий, хотя на компьютере этот сценарий работал.
После доработки покупатель мог пользоваться подсказками при вводе запроса. Задача отмечена как выполненная.
Устранение зависания при поисковом запросе
В истории сопровождения отдельно зафиксирована выполненная оптимизация поиска: ввод запроса «london» на главной странице вызывал зависание магазина. Этот сценарий исправили в рамках настройки поисковой функциональности.
Работы с поиском дополняли изменения его интерфейса: вывод наличия, корректную цену комплекта и открытие поискового блока в мобильной шапке.
Перенос модуля доставки и сопровождение адресных полей
Перенос существующего решения
Перенесли со старого сайта модуль расчёта доставки, использовавшийся совместно с плагином «Курьер» и дополнением courieraddons. При переносе устранили проблему выбора города в корзине, когда выбранное значение сбрасывалось. Этот этап отмечен как выполненный и принятый.
При работе с доставкой учитывалась существующая связь магазина с 1С: адрес и стоимость доставки должны использовать стандартные поля заказа.
Исправление ошибки поля подъёма
В октябре 2025 года исправили повторяющуюся ошибку в журнале, связанную с полем address:podyom. В обращении также упоминался блок доставки и подъёма dostavka_i_podem. Исправление ошибки логирования отмечено как выполненное.
Это отдельный результат технической поддержки. Более поздние требования к восстановлению всего сценария доставки, дополнительным услугам и устойчивости доработки после обновлений описаны ниже.
Административная панель и технические настройки безопасности
Исправление ошибки магазина и очистка информации заказа
В августе 2023 года исправили ошибку №1064, возникавшую при работе с магазином. В журнале задач этот пункт отмечен как завершённый.
В октябре 2025 года по отдельному запросу удалили лишнюю информацию из заказа. Это изменение также имеет подтверждение выполнения.
HTTP-заголовки и защищённые cookie
В рамках технических работ выполнили настройку HTTP security headers и secure cookies. Отдельно перенесли сайт на другой хостинг для проверки работоспособности и ошибок административной панели.
Эти изменения относятся к конкретным этапам сопровождения. Дополнительные требования к версиям программного окружения и отдельным политикам браузера перечислены в следующем разделе.
Дополнительные требования и обращения
В этом разделе собраны требования, уточнения и сообщения об ошибках без однозначного подтверждения завершения. Они дополняют историю проекта и не включены в перечень выполненных результатов.
Комплекты на уровне вариантов и цветов
- Показывать фотографии вариантов внутри блока сборки комплекта и выводить все доступные исполнения.
- Не включать в выбор варианты, скрытые на витрине или недоступные для заказа.
- Задавать состав комплекта и его цену на уровне конкретного варианта: одинаковый набор может иметь разные цвета.
- Предусмотреть выбор характеристики рядом с размерами элемента комплекта.
- Разделить настройки представления вариантов, чтобы включение выпадающего списка в одном месте не меняло вывод во всех блоках магазина.
- Проверить конфликт плагина комплектов с редактором товара: при включённом модуле редактирование карточки в административной панели становилось недоступным.
- Устранить повторное появление кнопки подгрузки между элементами после нескольких нажатий «Показать ещё». В переписке после первоначального изменения осталось сообщение о повторении проблемы.
Наличие выбранного артикула и малые остатки
В дополнительном обращении требовалось показывать в основной корзине остаток выбранного артикула, а не сумму по всем вариантам товара. Для количества 2 и менее были предложены оранжевая и красная индикация.
В октябре 2025 года отдельно запрошено различать цветом статус «Осталась 1 штука» и «Под заказ». Также зафиксирована проблема отсутствия наличия в плиточном каталоге на небольших мобильных экранах.
Подгрузка каталога и уточнение ряда фотографий
После внедрения подгрузки появились новые требования: восстановить кнопку «Загрузить ещё», которая исчезала после фильтрации на первой странице категории, и определить место изменения её текста.
Для фотографий вариантов в каталоге уточнили правило дополнительной плитки: если всего четыре изображения, нужно показать их без элемента «Ещё 1». При трёх видимых фотографиях дополнительный элемент требуется, когда остаются два изображения или больше.
Скорость категорий, SQL и нагрузка на хостинг
В обращениях 2023–2025 годов описывались зависания при открытии категорий, смене страницы и подгрузке товаров. Первое открытие могло быть медленным даже в категории с одной позицией, тогда как повторное выполнялось быстрее. В качестве возможных факторов обсуждались кеширование и загрузка изображений; в материалах также присутствовали настройки PHP и сообщения из журналов.
В августе 2024 года хостинг приостановил работу аккаунта из-за длительных запросов к базе данных. В примерах были запросы получения характеристик активных товаров с объединением таблиц товаров, категорий и значений характеристик. Для этого блока требовалась оптимизация запросов и базы данных.
В сентябре 2025 года заказчик сообщил, что самостоятельно решил проблему загрузки отключением обновления плагинов. Это действие не относится к выполненным студией работам. В октябре снова отмечалась высокая нагрузка SQL; подтверждения окончательной оптимизации этого направления в журнале нет.
Доставка по регионам, населённым пунктам и секторам
Для расширения модуля доставки сформулирован последовательный выбор адреса: разрешённая страна, регион, населённый пункт, сектор при его наличии, затем улица, дом и квартира. Покупателю должны быть доступны самовывоз и курьерская доставка, а после выбора населённого пункта — соответствующие варианты получения и стоимость.
В административной части были заданы следующие требования:
- Добавление стран вручную или использование стандартного списка Webasyst.
- Собственные населённые пункты для каждого региона и собственные секторы для населённого пункта.
- Настройка стоимости доставки для конкретного населённого пункта.
- Несколько тарифов с учётом срока доставки, стоимости заказа и выбранного способа получения.
- Расчёт, зависящий от стоимости товаров, для соответствующих направлений доставки.
- Примечание о возможной зависимости стоимости от объёма и веса мебели.
- Передача адреса и суммы доставки в стандартные поля заказа для существующего обмена с 1С.
Отдельно запрошен импорт регионов, городов и секторов из Google Таблицы. Способ заполнения справочников — вручную, импортом или через обмен с учётной системой — требовал уточнения.
В обращениях 2025 года также требовалось восстановить доставку после обновлений, проверить дополнение «Курьер», блок доставки и подъёма, а для дополнительных услуг выводить минимальную цену. Перенос модуля в 2021 году и позднейшее восстановление его работы относятся к разным этапам.
Кредитный калькулятор и передача заявки
Модуль покупки в кредит обсуждался как отдельное направление. Сначала требовалось уточнить возможности API. В качестве альтернативы рассматривался калькулятор с отправкой заявки по сценарию покупки в один клик.
- Выбор срока и первоначального взноса.
- Отображение ежемесячного платежа и итоговой суммы с учётом предусмотренной комиссии.
- Обозначение «0%» или «Без переплат» для сроков, где доступны такие условия.
- Передача выбранного срока и данных покупателя в комментарий к заявке или заказу.
- Редактируемый шаблон формы и представления условий.
- Адаптация окна для настольного и мобильного интерфейсов.
- Возможность обойтись без вывода логотипов банков.
Подтверждения внедрения банковской API-интеграции или завершения кредитного модуля в материалах нет.
Нижняя панель покупки и состав комплекта
Для мобильной карточки товара запрошена нижняя панель с ценой, кнопками покупки и кредита, а также доступом к чату. Для комплекта дополнительно требовались количество элементов и кнопка раскрытия списка выбранных позиций с их количеством.
На компьютере состав комплекта предполагалось показывать справа. Отдельно обсуждалось включение JivoChat в нижнее меню на телефонах и планшетах.
Галерея товара и изображения характеристик
В обращении 2022 года описан сбой галереи у товаров с большим количеством фотографий: миниатюры выстраивались в высокий вертикальный блок и нарушали расположение содержимого. Требовались центрирование основного изображения, горизонтальный ряд миниатюр ниже него и согласование этих блоков с соседними характеристиками.
Дополнительно были запрошены открытие фотографии на весь экран, согласованная анимация при наведении и устранение ухудшения качества изображений. Для выбора характеристик рассматривался графический вывод через плагин «Изображения характеристик».
В мобильной галерее предложено заменить мелкие фотографии индикаторами-точками. В переписке заказчик сообщил, что сделал такой вариант самостоятельно, но ему требовалась дальнейшая доработка.
Главная страница, каталог и фирменное оформление
В исходных требованиях было оформление темы под стиль ML-Mobila с ненагруженной шапкой и фирменным фиолетовым цветом #83107d. Для телефонов и планшетов отдельно задавались расположение логотипа, размеры элементов и адаптация навигации.
- Переработать главную страницу и промокарточки по согласованным визуальным ориентирам.
- Добавить адреса магазинов с картой и раскрытием подробной информации при выборе адреса.
- Предусмотреть каталог с двумя или тремя товарами в ряд и представление списком.
- При отключённых боковых блоках выводить четыре товара в строку.
- Показывать название товара, наличие и артикул в согласованном порядке.
- При наведении выводить избранное, сравнение, быстрый просмотр и кнопку покупки; для комплекта — переход к подробностям.
- Размещать слева фильтр, просмотренные товары, информационные блоки и сведения о сравнении.
- На мобильных устройствах собрать фильтр, сортировку и переключение вида в одну строку.
- Предусмотреть раскрывающееся меню категорий и согласованный размер логотипа.
- Добавить сценарий «Хочу в подарок» под блоком сборки и оформление заказа на одной странице.
Для ширины каталога без левой колонки заказчик позднее нашёл существующую настройку темы самостоятельно. В обращениях также оставались неприменяющиеся стили unishop.custom.css, отсутствие эффекта от изменения размера логотипа и некорректный вид фильтра с двумя полосами.
Языковые тексты, контакты и опросы покупателей
После настройки языковых страниц отдельно зафиксирована проблема MyLang: часть текстов темы отсутствовала в разделе перевода магазина, а изменение доступных полей не отражалось на витрине.
Для контактных данных требовался единый источник телефонных номеров с выводом в шапке, подвале и карточке товара. Также обсуждались доработка страницы контактов, управление адресами социальных ссылок и восстановление заказа обратного звонка в меню и раскрывающемся телефонном блоке.
Для сбора обратной связи предложен модуль опросов: создание вопросов в административной панели, получение ответов покупателей, сохранение информации и показ сообщения о завершении опроса.
Дополнительные витрины, импорт и наполнение каталога
Для оптового направления обсуждались дополнительные витрины с собственными логотипами и контактами. Отбор товаров должен был работать по характеристикам, например по бренду, расширяя существующий выбор только по категориям.
Для импорта из XML требовалось сопоставлять и обновлять информацию о товаре: фотографии, характеристики и описание. Это отдельная задача наполнения каталога, связанная с уже существующими товарами.
Также рассматривалось получение данных с сайта Kompanit: категорий, общих фотографий и фотографий по цветам, названий, артикулов, характеристик и видеоинструкций по сборке. При переносе нужно было учитывать, что разные цвета одной модели имеют собственные артикулы и названия. В материалах этот блок представлен как запрос на оценку.
Ошибки административной панели, заказов и артикулов
- Ошибка фильтрации товаров в административной панели.
- Проблема со статусами, при которой обработанные заказы не скрывались.
- Ошибка 500 при создании заказа.
- Ошибка 403 с сообщением защиты от CSRF при сохранении настроек регионов.
- Повторяющиеся сообщения в журналах, требующие отдельной диагностики.
- Запрос на скрытие красного информационного блока Webasyst в административной панели.
- Вынос необходимых настроек в приложение «Сайт».
- Дублирование названия в карточке товара и прекращение работы плагина покупки в один клик.
В 2023 году отдельно запрашивалась проверка лишней цифры перед артикулом. В январе 2026 года появилось уточнённое обращение: на витрине к артикулу добавлялись «1» в начале и «2» в конце, хотя в административной панели значение оставалось правильным. Проблема отмечалась у товаров с одним артикулом или без него.
В сентябре 2025 года заказчик также сообщил о дублях товаров, которых не было с соответствующими идентификаторами в 1С. Одну из дублирующихся позиций он удалил самостоятельно. Подтверждения устранения причины появления дублей в журнале нет.
Совместимость обновлений и дополнительные политики безопасности
Для дальнейших доработок требовалось определить способ внесения изменений — через плагин или шаблон — и учитывать обновления платформы и темы. Вопрос был особенно важен после повторного нарушения работы доставки.
В дополнительных требованиях безопасности указаны проверка актуальности используемого программного окружения и настройка отдельных HTTP-политик: Referrer-Policy, Strict-Transport-Security и политики разрешений браузера, обозначенной в исходном ТЗ как Feature-Policy. Самостоятельного подтверждения завершения каждого из этих пунктов в материалах нет.
Итоги и похожие задачи
В подтверждённую часть сопровождения MCL.md вошли перенос и настройка магазина, очистка данных исходного проекта, нумерация заказов, развитие интерфейса комплектов, вывод их цены и состава, отображение наличия, мобильное меню и фиксированная шапка. Позднее выполнили выбор цветов по фотографиям, подгрузку каталога с сохранением страниц, восстановление поисковых подсказок и отдельные исправления доставки, журналов и административной панели.
Кейс показывает взаимосвязь функций мебельного магазина: комплект зависит от выбранных элементов, вариант — от цвета, цены и остатка, а оформление заказа — от адреса и правил доставки. Дополнительные требования к кредиту, региональным тарифам, SQL, импорту и новым витринам описаны с учётом их фактического статуса.
Услуги для развития интернет-магазина
- Программирование интернет-магазинов на Webasyst и Shop-Script — доработка комплектов, вариантов товаров, корзины, доставки и административных инструментов.
- SEO и техническая оптимизация сайтов — работа со скоростью, структурой и технической подготовкой страниц.
- Доработка и техническая поддержка сайтов — другие примеры сопровождения действующих проектов.
Похожие проекты из портфолио
- Поддержка и доработка интернет-магазина «Мебель Урала».
- Доработка интернет-магазина стульев и кресел VseStulya.
- Техническая поддержка ZetZet.ru — каталог, корзина, доставка и мобильный интерфейс.
Обсудить доработку вашего магазина
Если вашему интернет-магазину нужны комплекты товаров, выбор вариантов по фотографиям, корректные остатки, удобная мобильная навигация или доработка доставки, обратитесь в Quadro Design. Изучим действующую конфигурацию Webasyst и Shop-Script, определим связанные сценарии и согласуем состав работ.
