Необхідно провести глибокий аналіз причин збільшення показника CLS на сайті. Після оптимізації базового CLS залишились нерозкриті проблеми, які потрібно виправити для покращення продуктивності та користувацького досвіду.
Интегрировать API каталог товаров на сайт Wordpress
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Каталог создан на основе каталога сайта b2b.rusklimat.com и предоставляется в формате, наиболее удобном для технических специалистов. Есть сайт на wordpress, нужно поставить этот API для отображения товаров на сайте. Вот инструкция по интеграции:
Инструкция пользователя REST API каталога ИП
Авторизация
Все запросы в rest api должны содержать jwt-токен авторизации в заголовке Authorization. Токен выдается на сутки, в 00:00 он станет невалидным и необходимо получить новый токен. Например, токен был получен в 13:00 24.06, а после 00:00 25.06 данный токен станет невалидным.
Доступно два способа получения токена:
В ручном режиме.
JWT ТокенeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE3MTkyNzM2MDAsImd1aWQiOiI3M2QyZGNkYi1kMDFhLTRmNDAtYTlmZi05ODY4ZTc3ZjJhNjUiLCJndWlkUk0iOm51bGwsImd1aWRMZWFkIjpudWxsLCJndWlkTWFuYWdlciI6bnVsbH0.Susc8CdUHRhmJJpz1h5wForiMc_eH34m0QsQGOtBsIM (json)
В автоматическом режиме через метод авторизации б2б портала
POST https://b2b.rusklimat.com/api/v1/auth/jwt/
Обязательно установите заголовок в запросе User-Agent: catalog-ip
Тело запроса{ "login": "9651111111", // логин для входа на б2б-портал "password": "123456" // пароль для входа на б2б-портал }
Ответ
{ "code": 200, "data": { "jwtToken": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2NzkwOTc2MDAsImd1aWQiOiI5YmZlOWMxMC1.UoPQ_zFGNFGsHVQ46u_M2rM2I18RnQpI" } }
Получение данных каталога
Адрес сервиса: https://internet-partner.rusklimat.com
Онлайн документация: https://internet-partner.rusklimat.com/swagger/index.html
Ваш id партнера (partnerId): 73d2dcdb-d01a-4f40-a9ff-9868e77f2a65
Получение идентификатораGET /api/v1/InternetPartner/73d2dcdb-d01a-4f40-a9ff-9868e77f2a65/requestKey/
в заголовке Authorization укажите jwt-токен
Тело ответа
{ "requestKey": 1679057010, "expire": 1679057061 }
где:
requestKey - идентификатор запроса, который нужно использовать на втором этапе
expire - метка времени, указывает окончание срока жизни идентификатора
GET /api/v1/InternetPartner/categories/{requestKey}
в заголовке Authorization укажите jwt-токен
requestKey - необходимо получить в запросе, описанном в разделе "Получение идентификатора"
Тело ответа
{ "totalCount": 241, "data": [ { "id": "f7a25385-f2ad-411b-9410-bd9c6fa386ce", "name": "Смесительные узлы и насосные станции", "parent": "f8e4738b-217b-4a82-8b5a-e1874d28ab79" }, ...... ] }
где:
id - уникальный идентификатор категории
name - наименование категории
parent - уникальный идентификатор категории-родителя, для корневой категории данное поле будет равно null
Получение свойств товаров
GET /api/v1/InternetPartner/properties/{requestKey}в заголовке Authorization укажите jwt-токен
requestKey - необходимо получить в запросе, описанном в разделе "Получение идентификатора"
Тело ответа
{ "totalCount": 1389, "data": [ { "id": "319e5ef4-baaa-11e5-b14a-ac162d7b6f40", "name": "Высота внешнего блока", "sort": 12 }, ...... ] }
где:
id - уникальный идентификатор свойства
name - наименование свойства
sort - сортировка свойства в общем списке свойств
Получение товаров каталогаPOST /api/v1/InternetPartner/73d2dcdb-d01a-4f40-a9ff-9868e77f2a65/products/{requestKey}/?pageSize=500&page=2
в заголовке Authorization укажите jwt-токен
requestKey - необходимо получить в запросе, описанном в разделе "Получение идентификатора"
Доступна постраничная навигация, get-параметры запроса:
pageSize - количество товаров на одной странице, максимальное значение 1000, по умолчанию 1000
page - номер страницы, по умолчанию 1
Тело запроса
{ "columns": [ "name", "nsCode", "price", "clientPrice" ], "filter": { "categoryIds": [ "f7a25385-f2ad-411b-9410-bd9c6fa386ce", "194602b6-2e40-4b6e-996c-89774e5b9fc1", "d2257a3e-4298-4e9b-8db7-5b6bfe62c76d" ] }, "sort": { "nsCode": "asc" } }
где
columns - массив полей товаров, которые необходимо выводить в ответе, если не указан, будут выведены все поля
filter - фильтрация товаров в ответе, доступны поля:
categoryIds - массив id категорий, товары которых нужно получить, в ответе также будут товары, которые находятся в подкатегориях
sort - поле для указания сортировки товаров в формате "кода поля": "порядок сортировки asc|desc"
Тело ответа
{ "totalCount": 18971, "pageSize": 500, "page": 2, "data": [ { "id": "3abaeda3-7eb3-11da-aaff-00304883a34f", "nsCode": "НС-0028148", "categoryId": "f7a25385-f2ad-411b-9410-bd9c6fa386ce", "vendorCode": "2000/3-W VIM", "brand": "SHUFT", "name": "Установка приточная компактная моноблочная CAU 2000/3-W VIM", "properties": [ {"23431d4b-52f4-11ea-9da0-ac162d7b6f40": "Полупромышленное оборудование"}, {"23431d4b-52f4-11ea-9da0-ac162d7b6f99": "Ступенчатая"}, ...... ], "pictures": [ "https://rkcdn.ru/products/23431d4b-52f4-11ea-9da0-ac162d7b6f40/src.png", ...... ], "video": [ "https://www.youtube.com/embed/xI0tHHjfg4Q", ...... ], "relatedProducts": [ "1c084dd7-4f83-45f5-a92f-334ff306d5a0", "27ff9d4a-e2aa-4820-8044-9e1d3cbcdd2d", ...... ], "analog": [ "27343389-5479-44d2-b811-445facb5812a", "b634c729-1c3d-43ca-a83f-3913d922448f", ...... ], "description": "<h3>Описание</h3><p>Рукосушка Electrolux ENDA-2500 представляет собой автоматическую сушилку для рук</p>" "drawing": [ "https://rkcdn.ru/products/23431d4b-52f4-11ea-1111-ac162d7b6f40/src.pdf", ...... ], "certificates": [ "https://rkcdn.ru/products/1111111-52f4-11ea-1111-ac162d7b6f40/src.pdf", "https://rkcdn.ru/products/1111111-52f4-11ea-1111-ac162d7b6f42/src.pdf", ...... ], "promoMaterials": [ "https://rkcdn.ru/products/1111111-52f4-11ea-1111-ac162d7b6f40/src.pdf", ...... ], "instructions": [ "https://rkcdn.ru/products/1111111-52f4-11ea-1111-ac162d7b6f40/src.pdf", "https://rkcdn.ru/products/1111111-52f4-11ea-1111-ac162d7b6f40/src.pdf", ...... ], "barcode": [ "7312971100010", ...... ], "price": 83016.00, "internetPrice": 83010.00, "clientPrice": 55620.72, "exclusive": true, "remains": { "total": 250, "warehouses": { "ФРЦ Киржач": 100, "РРЦ Сочи": 123, "омск склад": "ожидается поставка", ...... } } }, ...... ] }
где
totalCount - общее число товаров
pageSize - размер страницы в выдаче товаров
page - номер страницы выдачи товаров
data - массив с данными товаров
id - уникальный идентификатор товара
nsСode - НС код товара
categoryId - уникальный идентификатор категории, к которой привязан товар
vendorCode - артикул товара
brand - бренд товара
name - наименование товара
properties - массив свойств товара, элементы в формате "уникальный идентификатор свойства": "значение свойства"
pictures - массив ссылок на изображение товаров
video - массив ссылок на видео товаров
relatedProducts - массив уникальных идентификаторов сопутствующих товаров, может содержать 0 элементов
analog - массив уникальных идентификаторов аналогичных товаров, может содержать 0 элементов
description - описание товаров в формате html
drawing - массив ссылок на pdf файлы с чертежами, может содержать 0 элементов
certificates - массив ссылок на pdf файлы с сертификатами, может содержать 0 элементов
promoMaterials - массив ссылок на pdf файлы с промо материалами, может содержать 0 элементов
instructions - массив ссылок на pdf файлы с инструкциями, может содержать 0 элементов
barcode - массив штрихкодов
price - цена РРЦ
internetPrice - цена РИЦ
clientPrice - индивидуальная цена партнёра, в случае, когда цена не установлена, будет отдан 0
exclusive - признак эксклюзивности
remains - остаток товара на складе
total - сумма остатков по всем складам
warehouses - детализация остатков по складам в формате "название склада": "остаток на складе"
Заявки фрилансеров
Похожие заказы
- $500Веб-программирование4 заявкиЗакрыт8 месяцев назад
- $60
Необходимо разработать Telegram-бота, который будет интегрирован с сервисами leadteh.ru и lava.top. Бот должен обеспечивать возможность оплаты услуг на lava.top непосредственно через Telegram, связывая все три сервиса для удобного взаимодействия.
Веб-программирование2 заявкиЗакрыт8 месяцев назад Требуется разработка веб-приложения для расчета и конфигурации продукта с использованием платформы Bubble и других nocode решений. Ожидается создание функционала, который позволит пользователям легко настраивать продукт в соответствии с их потребностями.
Веб-программирование5 заявокЗакрыт8 месяцев назад- $300
Требуется доработка скрипта отправки почты на PHP. Исполнитель должен иметь опыт работы с PHP и JavaScript, а также знание технологий аутентификации и принципов работы почтовых серверов и антиспама. Техническое задание предоставляется по запросу.
Веб-программирование4 заявкиЗакрыт4 месяца назад Необходимо завершить разработку чат бота для Telegram, связать его с сервисами leadteh.ru и lava.top. Бот должен предлагать оплату услуг и предоставлять доступ в закрытый канал после оплаты через сви реквизиты. Проверьте правильность существующих карточек товара и интеграцию всех функций.
Веб-программированиенет заявокЗакрыт8 месяцев назадТребуется разработать веб-приложение для азартных игр с возможностью пополнения через криптовалюту и интеграцией API. Ищется ответственный специалист с опытом в данной сфере. Примеры аналогов будут предоставлены.
Веб-программирование22 заявкиЗакрыт8 месяцев назадНеобходима интеграция записей на платформе WordPress через API. Задача включает разработку функционала для автоматизации процессов и упрощения работы с контентом. Ожидается качественная реализация с учетом всех технических требований.
Веб-программирование4 заявкиЗакрыт7 месяцев назад- $40
Требуется настроить Eslint для проекта на VueJS 3 с Vite, включая проверку стиля по рекомендациям Vue.js, автоформатирование кода в VS CODE, pre-commit hook для проверки форматирования перед коммитом и настройку GitHub Actions для CI/CD. Идеально для опытных разработчиков, которые могут адаптировать свои конфиги.
Веб-программирование2 заявкиЗакрыт8 месяцев назад Ищется специалист по веб-скрапингу для парсинга подписчиков OnlyFans. Необходимо собрать имена и электронные адреса для маркетинговых целей. Требуется опыт работы с данными и знание безопасности. При успешном выполнении возможны новые проекты.
Веб-программирование3 заявкиЗакрыт8 месяцев назадТребуется разработать онлайн конструктор товара для сайта, позволяющий пользователям самостоятельно создавать товары, например, принты на футболках. Важно реализовать элемент рендеринга получившегося товара, а также возможность оформления. Подробности и техническое задание будут предоставлены для оценки работ.
Веб-программирование6 заявокЗакрыт8 месяцев назад