1

How to add custom module content in magento 2.0.7 list.phtml

Without modifying core list.phtml i need to append my custom module content in magento 2.0.7 list.phtml

  • Can you be more specific? – Corefix Jul 7 '16 at 12:09
  • ya sure ,in magento 2.0.7 category list page i want to add custom content through my custom module for example i want add custom text above the product image – paramuduraisamy Jul 7 '16 at 12:25
2

You can do that if you create new module to override this block:
vendor\magento\module-catalog\Block\Product\ListProduct.php

to override this block, you need to create di.xml at ,
app\code\Vendor\Module_Name\etc

di.xml content:

<?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="Vendor\Module_Name\Block\Product\ListProduct" />
</config>

Create new file name ListProduct.php at
app\code\Vendor\Module_Name\Block\Product

ListProduct.php content:

namespace Vendor\Module_Name\Block\Product;
class ListProduct extends \Magento\Catalog\Block\Product\ListProduct
{
    public function getProductDetailsHtml(\Magento\Catalog\Model\Product $product)
    {
        $html = $this->getLayout()->createBlock('Magento\Framework\View\Element\Template')->setProduct($product)->setTemplate('Vendor_ModuleName::test.phtml')->toHtml();
        $renderer = $this->getDetailsRenderer($product->getTypeId());
        if ($renderer) {
            $renderer->setProduct($product);
            return $html.$renderer->toHtml();
        }
        return '';
    }
}

You can change block Magento\Framework\View\Element\Template to your block

create yourphtml.phtml file at app\code\Vendor\Module_Name\view\frontend\templates

  • ok fine thank you for your response ,let me check – paramuduraisamy Jul 7 '16 at 12:33
  • I am getting "Invalid block type: Magento\Catalog\Block\Product\ListProduct" My file structure and type like this Type: Vendor\Module_Name\Block\Catalog\Product file path : Vendor\Module_Name\Block\Catalog\Product\ListProduct.php – paramuduraisamy Jul 7 '16 at 13:02
  • yes i got fixed ,i missed Catalog in TYPE Vendor\Module_Name\Block\Catalog\Product\ListProduct – paramuduraisamy Jul 7 '16 at 13:08
  • Hi RJ07 Thank you for your answer , i have few more doubts Its adding content above the add to cart i want to add my custom content into above the category image And i want to access helper data(that mean my custom module admin settings like enable disable ) in yourphtml.phtml – paramuduraisamy Jul 7 '16 at 13:15
  • Does it helped you to call your block on list page with above code? yeah please go on. – Rushvi Jul 7 '16 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.