Site icon MageComp Blog

How to Change Cross-Sell Product Limit in Magento 2?

How to Change Cross-Sell Product Limit in Magento 2

Hello Magento Friends,

Today I am here with another Magento solution on How to Change the Cross-Sell Product Display Limit in Magento 2?

Cross-selling products are supplements of the products added to the shopping cart. In Magento 2, Cross-sell products will be displayed on the Shopping Cart page.

Learn How to Setup Cross-Sell Products in Magento 2.

Also, Get Cross Sell Products Collection using Root Script in Magento 2.

In default Magento, only four Cross-sell products will be displayed on the cart page. If you want to increase or decrease the Cross-sell Product display limit on the cart page, you need to modify the core cross-sell.php file. Let’s understand deeply.

Steps to Change Cross-Sell Product Limit in Magento 2:

Step 1: First, you must create a di.xml file in the path below.

app/code/Vendor/Extension/etc/frontend/di.xml

Then, add the code as follows.

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <preference for="Magento\Checkout\Block\Cart\Crosssell" type="Vendor\Extension\Block\Cart\Crosssell" />
</config>

Step 2: After that, you must create a Block file in the path below.

app/code/Vendor/Extension/Block/Cart/Crosssell.php

Now add the following code snippet.

<?php

namespace Vendor\Extension\Block\Cart;

use Magento\CatalogInventory\Helper\Stock as StockHelper;

class Crosssell extends \Magento\Checkout\Block\Cart\Crosssell
{
    public function __construct(
        \Magento\Catalog\Block\Product\Context $context,
        \Magento\Checkout\Model\Session $checkoutSession,
        \Magento\Catalog\Model\Product\Visibility $productVisibility,
        \Magento\Catalog\Model\Product\LinkFactory $productLinkFactory,
        \Magento\Quote\Model\Quote\Item\RelatedProducts $itemRelationsList,
        \Magento\CatalogInventory\Helper\Stock $stockHelper,
        array $data = []
    ) {
        parent::__construct(
            $context,
            $checkoutSession,
            $productVisibility,
            $productLinkFactory,
            $itemRelationsList,
            $stockHelper,
            $data
        );

        $this->_maxItemCount = 7; // here set your product limit 
    }
}

Step 3: After that, run the below commands.

php bin/magento setup:di:compile
php bin/magento cache:flush

Conclusion:

Hence, accordingly, you can update the number of cross-selling products displayed on the shopping cart page in Magento 2. If you have any difficulty implementing the above steps, let me know through the comment section without hesitation. I will be quick to revert you back with a proper solution. Moreover, share the tutorial with your friends and stay in the know for more.

Happy Coding!

Exit mobile version