Я хочу использовать такие функции , как getName()
, getPrice()
и т.д. продукт для получения информации о продукте в Magento 2.
Может кто-нибудь показать мне, как я могу этого достичь?
product
price
magento2
magento-2.0
Дж. Джон
источник
источник
Ответы:
В Magento 2 предложено использовать сервисный слой для этого. Попробуйте использовать
\Magento\Catalog\Model\ProductRepository::getById
метод, чтобы получить продукт по идентификаторуисточник
Magento 2 рекомендует использовать
Factories
для загрузки всех моделей. Вот как вы должны это сделать:Над своим классом добавьте эту строку:
Теперь создайте свойство класса:
В вашем конструкторе добавьте зависимость:
Теперь загрузите продукт, как показано ниже:
источник
Помимо других ответов, я настоятельно рекомендую использовать следующие методы контрактов на обслуживание:
\Magento\Catalog\Api\ProductRepositoryInterface::getById
: загрузить товар по id\Magento\Catalog\Api\ProductRepositoryInterface::get
: загрузить товар по skuисточник
Более магенто-способ достижения этого, хотя трудно сказать, так как большинство мест в основном коде делают это по-разному, это использовать репозиторий продукта.
источник
для этого вы должны использовать ниже
использование
\Magento\Catalog\Model\Resource\Product\CollectionFactory
источник
Я получил информацию о продукте, используя функцию на странице просмотра продукта, как показано ниже.
Вот Sm / Sawyer моя тема.
источник