Отобразить ID у Configurable Product

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Dimanoss
  • Группа: Пользователь
  • Сообщений: 14
  • Регистрация: 16.08.2011

16.08.2011 11:18

Итак, при выборе параметров конфигурируемого продукта (например - длина и ширина чего-то там) очень хотелось бы получить номер соответствующего лота. Т.е. - артикулярный номер должен появляться только при выборе всех необходимых опций. Попытался решить это при помощи JavaScript, но тормознулся на опросе объекта spConfig. Подумалось, что проблема в устаревшей версии (1.2) магазина, но только что "хозяин" поставил версию 1.4 (не суперновьё, но всё же), но и там эта полезняшка отсутствует. Кто в курсе, есть ли более изящное решение? Или уже готовый ответ на JS?

Спасибо заранее...

#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

16.08.2011 13:31

Вы в вопросе употребили три термина: "ID", "номер соответствующего лота", "артикулярный номер".
Обозначают ли все три термина одно и то же понятие или разные?
Какую проблему предметной области вы хотите решить?

#3 Dimanoss
  • Группа: Пользователь
  • Сообщений: 14
  • Регистрация: 16.08.2011

16.08.2011 14:51

ArtNr.... который, например, шестизначный.... тот самый, который клиент увидит в счёте...

#4 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

16.08.2011 15:08

Клиентская (браузерная) часть не знает артикула выбранного покупателем состояния настраиваемого товара.
Чтобы получить этот артикул, вам придётся отправить асинхронный запрос на сервер.

#5 Dimanoss
  • Группа: Пользователь
  • Сообщений: 14
  • Регистрация: 16.08.2011

17.08.2011 10:28

да, но для этого тоже надо бы хоть что-то о товаре знать. Ну, ID базы, что ли...

#6 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

17.08.2011 12:10

Что вы обозначаете термином "ID базы"?

#7 Dimanoss
  • Группа: Пользователь
  • Сообщений: 14
  • Регистрация: 16.08.2011

17.08.2011 12:14

какой-то оригинальный ID продукта всё же в клиентскую часть передаётся?

#8 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

17.08.2011 12:24

Да, сервер передаёт браузеру идентификатор настраиваемого товара.

Он хранится в скрытом поле с именем product формы с идентификатором product_addtocart_form.

Сервер также передаёт браузеру идентификаторы опций и вариантов для каждой опции.

В результате добавления товара в корзину браузер отрбавляет серверу идентификатор настраиваемого товара и выбранные покупателем значения опций, а также выбранное покупателем количество товара.

Обратите внимание, что артикул настраиваемого товара будет отличаться от артикула выбранного покупателем (посредством указания значений опций) товара.

#9 Dimanoss
  • Группа: Пользователь
  • Сообщений: 14
  • Регистрация: 16.08.2011

17.08.2011 13:03

с этим я и пытаюсь воевать. Какой-то "нормальный" товар должен соответствовать настраиваему товару с такими-то и такими-то опциями. Выбираем опции настраиваемого товара - получаем индексы/номера/идентификаторы товара "статичного". Такая вот задумка.

#10 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

17.08.2011 13:04

Как я уже говорил, для получения информации о выбранном покупателем товаре вам нужно отправить асинхронный запрос на сервер: браузер данной информацией не располагает.

Поделиться темой: