Magento 2: Bestseller i najczęściej oglądany produkt na stronie głównej

13

Jak zdobyć bestseller i najczęściej oglądany produkt na stronie głównej Magento 2 ?

Musimy wyświetlić listę bestsellerów i najczęściej oglądanych produktów na suwaku strony głównej w Magento 2.

Rakesh Jesadiya
źródło

Odpowiedzi:

12

Dla bestsellera utwórz blok w __constructinstancji get

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

dawny

<?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;
    }       

}

Do ostatnio oglądanego możesz użyć widgetu po stronie administratora lub możesz napisać własny blok za pomocą \Magento\Reports\Model\ResourceModel\Product\CollectionFactory $productsFactory

Patrzeć na:

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

and

vendor\magento\module-backend\Block\Dashboard\Tab\Products\Ordered.php 
Pradeep Kumar
źródło
Jak uzyskać listę najczęściej oglądanych produktów?
Rakesh Jesadiya,
utwórz widget od administratora, w razie potrzeby zadzwoń do tego widgetu, jeśli bestsellery dla Ciebie działają, to zaakceptuj moją odpowiedź, aby była użyteczna dla innych
Pradeep Kumar
ok, najpierw sprawdzę, czy jest bestseller. Dzięki.
Rakesh Jesadiya
działa dobrze, otrzymasz identyfikator produktu i nazwę, wystarczy umieścić dla każdej pętli do kolekcji i wydrukować dane
Pradeep Kumar
1
@RBJesadiya: - na forum nie dostaniesz 100% rozwiązania dla swojego zadania, dostaniesz tylko pomysły, jeśli chcesz podnieść więcej nowych biletów, możesz spróbować $ collection-> getSelect () -> limit (10);
Pradeep Kumar,
0

Użyj poniższego kodu, aby wyświetlić NAJLEPSZY SPRZEDAWCA, a także NAJCZĘŚCIEJ PRZEGLĄDANE produkty w swoim suwaku Magento 2.

<?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
źródło
Pamiętaj, że po pierwszym uruchomieniu witryny nie będziesz mieć żadnych danych sprzedaży, więc musisz dodać logikę tworzenia kopii zapasowych, np. Odzyskać losowe produkty z katalogu, jeśli nie ma nic w tabeli sprzedaży.
thdoan