Настройка импорта от 8 поставщиков для сайта деловых подарков
# разработка
# кейс
КЛИЕНТ
Компания «Ремарк» — крупнейший поставщик рекламных сувениров и деловых подарков в республике Татарстан. Он работает в сегменте оптовых и розничных продаж.
В октябре 2023 года компания обратилась к нам, чтобы настроить импорт товаров на сайт из выгрузок, которые предоставляли поставщики. Для клиента — это важный шаг к развитию: автоматическая выгрузка поможет увеличить ассортимент, чтобы нарастить онлайн-продажи. Но это довольно масштабная работа: компания работает с восемью разными поставщиками, причем каждый из них присылает разноформатные выгрузки. Наша задача — настроить корректный импорт и доработать сайт под новую задачу.

Чтобы проверить, как сайт пройдет через обновления, перед запуском мы провели его аудит. И выяснили, что версия PHP, необходимая для корректной работы, устарела.
Как переходили с версии PHP 7.4 на PHP 8.1
С 1 февраля 2023 года 1С-Битрикс ограничил поддержку своих продуктов на PHP версии ниже 8.0. Это значит, что старые версии больше не поддерживаются, и разработчик не будет выпускать для них обновления, исправлять функциональные ошибки и выявлять уязвимости, угрожающие безопасности сайта.

Мы решили обновить версию до самой актуальной — PHP 8.1 с учетом, что новые функции и оптимизация языка увеличат скорость загрузки ресурса. Посетители не любят медленные страницы, и особенно интернет-магазины: им всегда удобнее пользоваться сайтом, который быстро и корректно работает. Но еще скорость загрузки — один из важных факторов ранжирования, поэтому ускорение положительно отразится на продвижении в поисковых системах.

Поскольку сайт написали другие подрядчики, то у нас под рукой не было версии для разработки. А в процессе правок всегда появляются ошибки, и предугадать, где и что сломается, нельзя. Поэтому создали тестовую копию сайта и сначала выполнили переход на ней. Это позволило найти и отладить все баги, но не нарушить работу основного ресурса и не потерять его трафик.

Затем по такой же схеме установили обновления Битрикса и его отдельных модулей.
Как импортировали товары из выгрузок поставщиков
Каждый поставщик предоставил выгрузку данных из своих каталогов, но они имели разный вид: например, некоторые предоставили API, другие — обновляемую выгрузку в формате xml. Структура каталога у каждого поставщика тоже отличалась.

Все это усложнило задачу: нужно было сделать так, чтобы все товары корректно импортировались из разных баз данных в наш каталог, к которому пользователи уже привыкли.
Для этого мы придумали решение:
импортировали только категории товаров из выгрузок поставщиков
присвоили каждой категории раздел каталога рабочего сайта
Это помогло избежать путаницы и сделать так, чтобы все товары импортировались в нужные категории. Решение тоже сначала проверили на тестовом сайте, а после запустили импорт на основном ресурсе.
Что доработали на сайте
Раньше каталог товаров был небольшим, но импорт товаров от поставщиков расширил ассортимент. Поэтому на сайте внесли визуальные и технические исправления.
На сайте появились товары с новыми свойствами. Мы настроили вывод всех характеристик в товарную карточку.
1
Настроили в карточке вывод наличия на складе в России и в Европе. У нашего клиента среди покупателей есть оптовики: им удобно знать, какой объем товара можно дозаказать из-за границы.
2
Переработали внешний вид карточки товара и проработали адаптив, сделали его более удобным для посетителей:

увеличили фото товара;
переставили блоки и поправили шрифты;
вывели отдельно характеристики;
вывели наличие рядом с ценой.
3
Раньше фильтр на сайте был уникальным кастомным решением, заточенным на определенную структуру хранения данных. Пока товаров на сайте было не очень много, он работал хорошо. Но после расширения ассортимента встал вопрос о повышении его производительности. Мы предложили доработку: изменили его бэкэнд и ускорили работу.
4
Реализовали поиск по артикулу и его части, чтобы было удобнее искать позиции оптовым покупателям и менеджерам магазина.
5
Настроили работу фильтра на странице результатов поиска.
6
Что сделали на этапе релиза
После всех доработок и тестирования работы запланировали релиз и проверили, что перенесли все изменения на рабочую версию ресурса. Затем добавили несколько решений для автоматизации:
Настроили сохранение информации об обновлениях в логах: теперь, если возникнут баги, можно отследить, откуда началось развитие проблемы.
3
2
Для SEO важна правильная работа фильтра. Он создает дополнительные посадочные страницы и улучшает видимость сайта в поиске. Все свойства товаров в выгрузках поставщиков прописаны в русскоязычном формате. Чтобы фильтр работал корректно, нужно создать URL страницы на латинице. Здесь мы тоже придумали автоматизацию: запустили планировщик, который будет переводить названия.
1
Поставщики часто меняют цены на товары, добавляют новые позиции или наоборот, убирают старые из ассортимента. Чтобы в будущем клиенту не пришлось отслеживать изменения и все менять вручную, настроили планировщики. Это скрипты, которые будут в одно и то же время автоматически проверять актуальное наличие, сверять прайсы и вносить изменения при необходимости.
Настроили сохранение информации об обновлениях в логах: теперь, если возникнут баги, можно отследить, откуда началось развитие проблемы.
3
2
Для SEO важна правильная работа фильтра. Он создает дополнительные посадочные страницы и улучшает видимость сайта в поиске. Все свойства товаров в выгрузках поставщиков прописаны в русскоязычном формате. Чтобы фильтр работал корректно, нужно создать URL страницы на латинице. Здесь мы тоже придумали автоматизацию: запустили планировщик, который будет переводить названия.
1
Поставщики часто меняют цены на товары, добавляют новые позиции или наоборот, убирают старые из ассортимента. Чтобы в будущем клиенту не пришлось отслеживать изменения и все менять вручную, настроили планировщики. Это скрипты, которые будут в одно и то же время автоматически проверять актуальное наличие, сверять прайсы и вносить изменения при необходимости.
Отзыв клиента
Что в итоге
Клиент обратился к нам с задачей, чтобы мы перенесли на сайт данные о товарах из выгрузок поставщиков.
Мы предварительно провели аудит, обновили версию PHP, Битрикс и все модули, чтобы сайт как можно дольше работал корректно и безопасно. На обновленной версии настроили импорт товаров от восьми разных поставщиков. Получилось функциональное и удобное решение для администраторов, а автоматика сэкономила много времени на ручном переносе данных.

При этом сайт стал лучше и быстрее работать. Мы придумали и внедрили несколько идей, чтобы пользователям было удобнее выбирать и покупать, прописали скрипты, которые помогут следить за корректностью цен. Все эти меры позволили усилить SEO и поднять авторитет сайта в поисковых системах. Несмотря на сложность задачи, уложились в оговоренные сроки: доработки заняли примерно три месяца.
Нужно сделать так, чтобы сайт закрывал потребности бизнеса? Обращайтесь к нам: мы поможем улучшить ресурс, автоматизировать рутину и привести клиентов с помощью контекстной рекламы и оптимизации.
Над проектом работали
Василевич Дмитрий
Аккаунт-менеджер
Екатерина Михальцова
Backend-разработчик
Анастасия Красильникова
Менеджер проекта
Юлия Дмитриева
Frontend-разработчик
Ксения Гамзулина
Редактор