Làm thế nào để có được sản phẩm bán chạy nhất và được xem nhiều nhất trong trang chủ Magento 2 ?
Chúng tôi phải hiển thị danh sách sản phẩm bán chạy nhất và được xem nhiều nhất trong thanh trượt trang chủ trong magento 2.
Làm thế nào để có được sản phẩm bán chạy nhất và được xem nhiều nhất trong trang chủ Magento 2 ?
Chúng tôi phải hiển thị danh sách sản phẩm bán chạy nhất và được xem nhiều nhất trong thanh trượt trang chủ trong magento 2.
Câu trả lời:
Đối với bán chạy nhất tạo một khối trong __construct
ví dụ của
\Magento\Sales\Model\ResourceModel\Report\Bestsellers\CollectionFactory $collectionFactory,
Ví dụ
<?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;
}
}
Để xem gần đây, bạn có thể sử dụng widget từ phía quản trị viên hoặc người nào khác bạn có thể viết khối tùy chỉnh với \Magento\Reports\Model\ResourceModel\Product\CollectionFactory $productsFactory
Nhìn vào:
vendor\magento\module-backend\Block\Dashboard\Tab\Products\Viewed.php
and
vendor\magento\module-backend\Block\Dashboard\Tab\Products\Ordered.php
Sử dụng mã sau đây để xem NGƯỜI BÁN HÀNG TỐT NHẤT cũng như các sản phẩm ĐƯỢC XEM NHẤT trong Thanh trượt Magento 2 của bạn.
<?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'); ?>