You can get product data by product id in Magento 2 by below code snippets,
<?php namespace Rbj\Training\Block; class Product extends \Magento\Framework\View\Element\Template { /** * Constructor * * @param \Magento\Framework\View\Element\Template\Context $context * @param array $data */ public function __construct( \Magento\Framework\View\Element\Template\Context $context, \Magento\Catalog\Api\ProductRepositoryInterface $productRepository, array $data = [] ) { $this->productRepository = $productRepository; parent::__construct($context, $data); } /** * Get Product by Id * @param int * @return \Magento\Catalog\Model\Product $product */ public function getProduct($id) { return $this->productRepository->getById($id); } }
Call inside template file by below code,
$product_id = 1; $product = $block->getProduct($product_id); echo $product->getName(); // product name echo $product->getSku(); // product sku