Magento – How to get Review & Ratings by Product Id In Magento 2

magento2review

I am trying the below code but not working can you please help what i am doing wrong

class classname implements classnameInterface
{

          protected $subscriberFactory;
            protected $reviewFactory;
            protected $storeManager;
            protected $product;


      public function __construct(


    \Magento\Review\Model\ReviewFactory $reviewFactory,
        \Magento\Store\Model\StoreManagerInterface $storeManager


) {
    $this->subscriberFactory= $subscriberFactory;
    $this->reviewFactory = $reviewFactory;
        $this->_storeManager = $storeManager;



}

    public function review($reviewId) {


 $this->reviewFactory->create()->getEntitySummary($product, 1);
    $ratingSummary = $product->getRatingSummary()->getRatingSummary();

    return $ratingSummary;

    }




}

Should i need to $product Declaration anywhere ?

Best Answer

Your code seems to be perfect may be you are missing something.

    $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
    $reviewFactory = $objectManager->create('Magento\Review\Model\Review');

    $storeId = $this->_storeManager->getStore()->getId();
    $reviewFactory->getEntitySummary($product, $storeId);

    $ratingSummary = $product->getRatingSummary()->getRatingSummary();

load $product object somewhere before getEntitySummary line.