
Contents
1. Overriding Block
Override catalog product ListProduct block.
Create di.xml file in app/code/[Name_Space]/[Your_Module]/etc
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<?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\Catalog\Block\Product\ListProduct" type="[Name_Space]\[Your_Module]\Block\Rewrite\Product\ListProduct" /> </config> Create ListProduct.php Block file in app/code/[Name_Space]/[Your_Module]/Block/Rewrite/Product <?php namespace [Name_Space]\[Your_Module]\Block\Rewrite\Product; class ListProduct extends \Magento\Catalog\Block\Product\ListProduct { public function _getProductCollection() { } } |
2. Overriding Model
Override catalog product model.
Create di.xml file in app/code/[Name_Space]/[Your_Module]/etc
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
<?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\Catalog\Model\Product" type="[Name_Space]\[Your_Module]\Model\Rewrite\Catalog\Product" /> </config> Create Product.php Model file in app/code/[Name_Space]/[Your_Module]/Model/Rewrite/Catalog <?php namespace [Name_Space]\[Your_Module]\Model\Rewrite\Catalog; class Product extends \Magento\Catalog\Model\Product { public function isSalable() { } } |