Magento 2 obtener producto por ID
Magento 2, es la versión actualizada de magento 1.9, trae muchas mejoras, la curva de aprendizaje puede se un poco complicada, pero el resultado es increíble. Empezaré a colocar una serie de mini tutoriales que uso día a día.
El día de hoy veremos como obtener un producto por medió de su ID.
Usando $objectManager directamente
si conoces magento 1, sabras que se puede obtener el producto por medio de un objeto, en magento 2 es necesario instanciar el manejador de objetos, este manejador de objetos es una clase singleton por lo que puede ser llamada en donde sea:
$productId = 100; $objectManager = MagentoFrameworkAppObjectManager::getInstance(); $product = $objectManager->get('MagentoCatalogModelProduct')->load($productId);
Usando Factory
Se puede obtener el producto con el siguiente código:
protected $_productFactory; ... public function __construct( ... MagentoCatalogModelProductFactory $productFactory ) { ... $this->_productFactory = $productFactory->create(); ... } public getProductByid($id) { return $this->_productFactory->load($id); } // Usar en cualquier parte del módulo $product = $this->getProductByid($id);
Existen más formas de obtener un producto por el ID pero estas 2 me parecen las más adecuadas ya que la primera sigue el mismo principio de Magento 1 y la segunda se construye dentro de nuestro modulo personalizado.
Publicaciones relacionadas
10/08/2019
Instalar Sample Data en Magento 2 usando composer
Una vez que tienes instalado Magento 2, solo ejecuta el siguiente comando.
06/30/2019
Conectar Magento 2 con CloudFront
Módulo personalizado para conectar Magento 2 con CloudFront, crea…
10/03/2021
Logs personalizados Magento2
Los archivos Log ayudan en la depueración de cualquier función, en Magento2,…
10/03/2019
Aumentar memory_limit en php SSH
Al levantar diferentes servidores con Valet, me he topado con el problema de la…
05/16/2021
[solución]: error HY000 2054 caching_sha2_password al conectar a base de datos MySQL 8
Este inconveniente aparece en proyectos como magento, wordpress o en mi caso…
03/24/2018
Select Box personalizado en system.xml de magento 2
Veremos un ejemplo de como crear un selectbox personalizado en las opciones de…
10/19/2019
Acortar linea de comando linux
Este pequeño tip es para tener una linea de comandos más estética y podamos…
10/09/2019
Aumentar memory_limit en Valet Mac.
En el caso de Valet, esta variable es sobreescrita en el archivo:…