Как предоставить покупателю поиск товара по его внутреннему идентификатору?

[16 июля 2019 г.]    Российская сборка Magento 2.52.2
Magento 2: модули и услуги
magereport.com: составление перечня необходимых для установки заплаток SUPEE
#1 Solven
  • Группа: Пользователь
  • Сообщений: 44
  • Регистрация: 02.07.2011

28.07.2011 00:23

Здравствуйте!

Прошу помощи, как дополнить функцию поиска, что он начал искать и по ID в системе?

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

28.07.2011 09:42

Имеете ли вы в виду внутренний системный идентификатор товара?

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

28.07.2011 10:56

Да, именно его.

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

28.07.2011 10:59

Откуда покупатель его знает?

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

28.07.2011 11:52

У нас в магазине, очень длинные артикулы, для удобства вида для клиентов вывели ID системный в шаблоне товара.
И пока на ближайшее время не рекомендуется "светить" артикулы.

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

28.07.2011 11:59

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

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

28.07.2011 12:48

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

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

28.07.2011 12:56

На мой взгляд, проще подписаться на событие сохранение товара и автоматически заполнять клиентский артикул для новых товаров, чем переделывать логику модуля CatalogSearch

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

28.07.2011 18:01

Это хорошо когда нет товаров..

Изменять?.. разве может лучше дополнить, что бы он начал искать и по полю ID ?
Просто для нашего магазина на данный момент проще изменить или дополнить контроллер поиска...

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

28.07.2011 18:02

Вам виднее.
Хорошо, если напишите потом, сколько времени ушло :)

#11 Solven
  • Группа: Пользователь
  • Сообщений: 44
  • Регистрация: 02.07.2011

29.07.2011 00:50

Ну да согласен.. сложно..
Расскажите пожалуйста по подробнее про "подписаться на событие сохранение товара и автоматически заполнять клиентский артикул для новых товаров"?

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

29.07.2011 09:08

Когда Magento сохраняет модель в базе данных, она оповещает об этом подписчиков четырьмя событиями, 2 из которых вызываются до сохранения модели, и 2 - после.

До сохранения модели система отсылает подписчикам сообщения model_save_before и <тип модели>_save_before (для товара - catalog_product_save_before).

После сохранения модели система отсылает подписчикам сообщения model_save_after и <тип модели>_save_after (для товара - catalog_product_save_after).

Все эти сообщения содержат сам сохраняемый объект.

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