Magento 2: मुखपृष्ठ पर बेस्टसेलर और सबसे अधिक देखा गया उत्पाद


13

होमपेज Magento 2 में बेस्टसेलर और सबसे ज्यादा देखे जाने वाले उत्पाद कैसे प्राप्त करें ?

हमें Magento 2 में होमपेज स्लाइडर में बेस्टसेलर और सबसे अधिक देखी गई उत्पाद सूची प्रदर्शित करनी है ।

जवाबों:


12

बेस्टसेलर के लिए __constructउदाहरण के लिए ब्लॉक बनाएं

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

भूतपूर्व

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

}

हाल ही में देखे गए के लिए आप व्यवस्थापक की ओर से विजेट का उपयोग कर सकते हैं या फिर आप के साथ कस्टम ब्लॉक लिख सकते हैं \Magento\Reports\Model\ResourceModel\Product\CollectionFactory $productsFactory

की ओर देखें:

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

and

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

अधिकांश देखे गए उत्पादों की सूची कैसे प्राप्त करें?
राकेश जेसादिया

व्यवस्थापक से विजेट बनाएं, सामने के अंत में उस विजेट को कॉल करें, अगर बेस्टसेलर आपके लिए काम करता है तो मेरे उत्तर को स्वीकार करें ताकि यह दूसरों के लिए उपयोगी हो
प्रदीप कुमार

ठीक है, मैं इसे बेस्टसेलर के लिए सबसे पहले जांचूंगा। धन्यवाद।
राकेश जेसादिया

इसके वर्किंग फाइन से आपको प्रॉडक्ट आईडी और नाम मिल जाएगा, बस कलेक्शन के लिए प्रत्येक लूप के लिए रखें और डेटा प्रिंट करें
प्रदीप कुमार

1
@RBJesadiya: - फोरम में आपको अपने कार्य के लिए 100% समाधान नहीं मिलेगा, आपको केवल विचार मिलेंगे, यदि आप अधिक नया टिकट लेना चाहते हैं, तो आप इस $ संग्रह की कोशिश कर सकते हैं-> getSelect () -> सीमा (10);
प्रदीप कुमार

0

अपने Magento 2 स्लाइडर में BEST विक्रेता के रूप में के रूप में अच्छी तरह से सबसे अधिक उत्पादों को देखने के लिए निम्न कोड का उपयोग करें।

<?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'); ?>

ध्यान रखें कि जब आप पहली बार कोई साइट लॉन्च करते हैं, तो आपके पास कोई बिक्री डेटा नहीं होगा, इसलिए आपको बैकअप तर्क जोड़ने की आवश्यकता होगी, उदाहरण के लिए, कैटलॉग से यादृच्छिक उत्पादों को पुनर्प्राप्त करें यदि बिक्री तालिका में कुछ भी नहीं है।
थंडरन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.