In this tutorial we learn how to override controller.
To override controller we need to create a basic module structure (to know more about module creation click here). In our below code we have Hello module that will override Product view controller.
Create di.xml file in Folder ArpitK/Hello/etc
our complete path is app/code/ArpitK/Hello/etc/di.xml
1 2 3 4 5 |
<?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="MagentoCatalogControllerProductView" type="ArpitKHelloControllerRewriteProductView" /> </config> |
1 |
Now we need to create view.php controller file in ArpitKHelloControllerRewriteProduct
1 2 3 4 5 6 7 8 9 10 11 12 13 |
namespace ArpitKHelloControllerRewriteProduct; class View extends MagentoCatalogControllerProductView { /** * @return MagentoFrameworkControllerResultRedirect|MagentoFrameworkViewResultPage */ public function execute() { // Do your stuff here return parent::execute(); } } |
Welcome to our blog!