Magento 2: Bestseller und meistgesehenes Produkt auf der Homepage

13

Wie bekomme ich den Bestseller und das meistgesehene Produkt auf der Homepage von Magento 2 ?

Wir müssen den Bestseller und die meistgesehene Produktliste im Homepage-Slider in Magento 2 anzeigen.

Rakesh Jesadiya
quelle

Antworten:

12

Für Bestseller erstellen Sie einen Block in __constructget instance of

\Magento\Sales\Model\ResourceModel\Report\Bestsellers\CollectionFactory $collectionFactory,

Ex

<?php
namespace Sugarcode\Test\Block;

class Test extends \Magento\Framework\View\Element\Template
{
    protected $_coreRegistry = null;
    protected $_collectionFactory;

    public function __construct(
        \Magento\Backend\Block\Template\Context $context,
        \Magento\Framework\Registry $registry,
       \Magento\Sales\Model\ResourceModel\Report\Bestsellers\CollectionFactory $collectionFactory,
        array $data = []
    ) {
        $this->_collectionFactory = $collectionFactory;
        $this->_coreRegistry = $registry;
        parent::__construct($context, $data);
    }



    public function _prepareLayout()
    {
        return parent::_prepareLayout();
    }
    public function getBestSellerData()
    {
        $collection = $this->_collectionFactory->create()->setModel(
            'Magento\Catalog\Model\Product'
        );

        return $collection;
    }       

}

Für kürzlich angesehene können Sie Widget von der Admin-Seite verwenden oder Sie können benutzerdefinierte Block mit schreiben \Magento\Reports\Model\ResourceModel\Product\CollectionFactory $productsFactory

Ansehen:

vendor\magento\module-backend\Block\Dashboard\Tab\Products\Viewed.php

and

vendor\magento\module-backend\Block\Dashboard\Tab\Products\Ordered.php 
Pradeep Kumar
quelle
Wie bekomme ich eine Liste der meistgesehenen Produkte?
Rakesh Jesadiya
Widget vom Administrator erstellen, im Front-End dieses Widget aufrufen, wenn Bestseller für Sie arbeiten, dann meine Antwort akzeptieren, damit es für andere nützlich ist
Pradeep Kumar
ok, ich werde es zuerst auf Bestseller überprüfen. Vielen Dank.
Rakesh Jesadiya
Wenn es funktioniert, erhalten Sie die Produkt-ID und den Produktnamen. Geben Sie einfach für jede Schleife die Daten für die Sammlung ein und drucken Sie sie aus
Pradeep Kumar,
1
@RBJesadiya: - Im Forum erhalten Sie keine 100% ige Lösung für Ihre Aufgabe. Sie erhalten nur Ideen. Wenn Sie ein neues Ticket erheben möchten, können Sie dieses $ collection-> getSelect () -> limit (10) ausprobieren.
Pradeep Kumar
0

Verwenden Sie den folgenden Code, um die Produkte BEST SELLER und MOST VIEWED in Ihrem Magento 2 Slider anzuzeigen.

<?php $objectManager = \Magento\Framework\App\ObjectManager::getInstance();   
$productCollection = $objectManager->create('Magento\Reports\Model\ResourceModel\Report\Collection\Factory'); 
$collection = $productCollection->create('Magento\Sales\Model\ResourceModel\Report\Bestsellers\Collection'); ?>
Abhinav Singh
quelle
Denken Sie daran, dass Sie beim ersten Start einer Site keine Verkaufsdaten haben und daher eine Sicherungslogik hinzufügen müssen, z. B. zufällige Produkte aus dem Katalog abrufen, wenn die Verkaufstabelle nichts enthält.
Doan