Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?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="MagentoCatalogWidgetBlockProductProductsList" type="VendorNamespaceBlockProductProductsList" />
- </config>
- <?php
- namespace VendorNamespaceBlockProduct;
- class ProductsList extends MagentoCatalogWidgetBlockProductProductsList
- {
- protected $_httpContext;
- public function __construct(
- MagentoCatalogBlockProductContext $context,
- MagentoCatalogModelResourceModelProductCollectionFactory $productCollectionFactory,
- MagentoCatalogModelProductVisibility $catalogProductVisibility,
- MagentoFrameworkAppHttpContext $httpContext,
- MagentoRuleModelConditionSqlBuilder $sqlBuilder,
- MagentoCatalogWidgetModelRule $rule,
- MagentoWidgetHelperConditions $conditionsHelper,
- array $data = []
- ) {
- $this->_httpContext = $httpContext;
- parent::__construct(
- $context,
- $productCollectionFactory,
- $catalogProductVisibility,
- $httpContext,
- $sqlBuilder,
- $rule,
- $conditionsHelper,
- $data
- );
- }
- protected function _construct()
- {
- parent::_construct();
- // Tested, but does not work
- // $this->setTemplate('Vendor_Namespace::product/widget/content/grid.phtml');
- }
- public function isCustomerLoggedIn()
- {
- return $this->_httpContext->getValue(MagentoCustomerModelContext::CONTEXT_AUTH);
- }
- }
- ├── Block
- │ └── Product
- │ └── ProductsList.php
- ├── etc
- │ ├── di.xml
- │ └── module.xml
- ├── registration.php
- └── view
- └── frontend
- └── templates
- └── product
- └── widget
- └── content
- └── grid.phtml
- <?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="MagentoCatalogWidgetBlockProductProductsList" type="YOUR_NAMESPACECatalogWidgetBlockProductProductsList" />
- </config>
- <?php
- namespace YOUR_NAMESPACECatalogWidgetBlockProduct;
- class ProductsList extends MagentoCatalogWidgetBlockProductProductsList
- {
- public function myTest()
- {
- die('Hello World !');
- }
- }
- ?>
- vendor/magento/module-catalog-widget/view/frontend/templates/product/widget/content/grid.phtml
- print_r(get_class_methods($block));
- <?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="MagentoCatalogWidgetBlockProductProductsList" type="VendorNamespaceBlockProductProductsList" />
- </config>
- <?php
- namespace YOUR_NAMESPACECatalogWidgetBlockProduct;
- class ProductsList extends MagentoCatalogWidgetBlockProductProductsList
- {
- public function customMethod()
- {
- //do your action here
- }
- }
- ?>
- vendor/magento/module-catalog-widget/view/frontend/templates/product/widget/content/grid.phtml
- app/code/YOUR_NAMESPACE/CatalogWidget/view/frontend/templates/product/widget/content/grid.phtml
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement