General

How to Load Products by Product ID and SKU in Magento 2?

Hello, Magento Folks,

Last time we learned how you can Set Image Gallery Fotorama thumbnail as Vertical in Magento 2. Today, we are going to learn how you can load your Magento 2 Products by Product ID and SKU.

Loading products is an important thing to get product information, and also it is the most sought after thing by many merchants. This serves the purpose of getting the exact product information to make changes or do other things with the help of product ID or SKU assigned to the particular product.

We will be looking into how you can load products from product ID and SKU both with the help of some simple codes that are also recommended by Magento.

Let’s first look at how you can load products from product ID.

Method – 1: This short method is not recommended by the Magento to use so we don’t either.

$productid = 32;
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $objectManager->get('Magento\Catalog\Api\ProductRepositoryInterface')->getById($productid);

Method – 2: This method is highly recommended by Magento to use when you need the product information.

<?php
namespace Vendor\Extension\Block;

class Product extends \Magento\Framework\View\Element\Template
{
   protected $productrepository;  

   public function __construct(\Magento\Catalog\Api\ProductRepositoryInterface $productrepository) {
        $this->productrepository = $productrepository;
   }

   public function getProductDataUsingId($productid) {
       return $this->productrepository->getById($productid);
   }
}

PHTML file code,
$product = $block->getProductDataUsingId(32);
echo $product->getName();

Now, let’s look at how to load products by product SKU.

Method – 1: This short method is not recommended by the Magento to use so we don’t either.

$productsku = "productsku";
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $objectManager->get('Magento\Catalog\Api\ProductRepositoryInterface')->get($productsku);

Method – 2: This method is highly recommended by Magento to use when you need product information.

<?php 
namespace Vendor\Extension\Block; 

class Product extends \Magento\Framework\View\Element\Template
{
  protected $productrepository; 

  public function __construct(\Magento\Catalog\Api\ProductRepositoryInterface $productrepository) { 
         $this->productrepository = $productrepository;
  }

  public function getProductDataUsingSku($productsku) {
        return $this->productrepository->get($productsku);
  }
}


PHTML file code,
$product = $block->getProductDataUsingSku(“productsku”);
echo $product->getName();

So, this was it for now. Using these codes, you will be able to load product information by ID or SKU, whichever you prefer. Comment below to let us know that you like the article. You can also share this with your Magento Friends.

 

Lastly, if any problem arises when applying codes, then you can get in touch with us at our support portal.

Happy Coding!?

Click to rate this post!
[Total: 5 Average: 5]
Dhiren Vasoya

Dhiren Vasoya is a Director and Co-founder at MageComp, Passionate 🎖️ Certified Magento Developer👨‍💻. He has more than 9 years of experience in Magento Development and completed 850+ projects to solve the most important E-commerce challenges. He is fond❤️ of coding and if he is not busy developing then you can find him at the cricket ground, hitting boundaries.🏏

Recent Posts

The ABCs of Geofencing: Definition, Features and Uses

In this era, businesses are always on the lookout for ways to engage with their…

9 hours ago

How to Delete Product Variant in a Shopify Remix App using GraphQL Mutations?

Managing a Shopify store efficiently involves keeping your product catalog organized. This includes removing outdated…

1 day ago

6 Innovative Tools Revolutionizing E-Commerce Operations

E-commerce has transformed the way consumers shop for products and services and interact with businesses.…

3 days ago

How Upcoming Cookie Changes Will Affect Your E-commerce Website?

The e-commerce world is constantly in flux. New tech and strategies emerge daily to help…

3 days ago

Magento 2: How to Add Header and Footer in Checkout

Hello Magento Friends, In today’s blog, we will discuss adding a header and footer to…

4 days ago

Understanding Flexbox Layout in React Native

Hello React Native Friends, Building a visually appealing and responsive mobile app is crucial in…

6 days ago