0

Since I removed the review tab on product page, now I'd like to display all customer reviews in the product page itself (but outside of the tab).

How can I display them?

I'm running Magento 2.4.2.

1

2 Answers 2

0

You can get Product review data with the use of product id. Check the below code:

  protected $productRepository; 
  protected $_reviewCollection; 

  public function __construct(
      ...
      \Magento\Catalog\Api\ProductRepositoryInterface $productRepository,
      \Magento\Review\Model\ResourceModel\Review\CollectionFactory $reviewCollection,
      ...
  ) {
      ...
      $this->productRepository = $productRepository;
      $this->_reviewCollection = $reviewCollection;
      ...
  }

  public function getCollection($productId)
  {
    $product = $this->productRepository->getById($productId);
    $collection = $this->_reviewCollection->create()
      ->addStatusFilter(
        \Magento\Review\Model\Review::STATUS_APPROVED
      )->addEntityFilter(
      'product',
        $productId
      )->setDateOrder();

      print_r($collection->getData()); //Get all review data of product
  }
0

I did it in this really clean way:

I created app/design/frontend/Vendor/Theme/Magento_Catalog/layout/catalog_product_view.xml with this layout:

<referenceBlock  name="reviews.tab" remove="true" />

<referenceContainer name="content">          
    <container name="product.info.details" htmlTag="div" htmlClass="product info detailed" after="product.info.media">
        <block class="Magento\Review\Block\Form" name="product.review.form" as="review_form" ifconfig="catalog/review/active" after="product_review_list.toolbar">
            <container name="product.review.form.fields.before" as="form_fields_before" label="Review Form Fields Before" htmlTag="div" htmlClass="rewards"/>
        </block>
        <block class="Magento\Review\Block\Product\View\ListView" name="product.info.product_additional_data" as="product_additional_data" template="Magento_Review::product/view/list.phtml" ifconfig="catalog/review/active"/>
        <block class="Magento\Theme\Block\Html\Pager" name="product_review_list.toolbar" ifconfig="catalog/review/active"/>
    </container>
</referenceContainer>
1
  • Can i get any touchpoints for getting google reviews on my page.
    – zus
    Commented Apr 12, 2021 at 4:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.