![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/app/code/Cnc/CatalogGenericProductItem/Plugin/ViewModel/Product/ |
<?php /** * Copyright (c) 2020 Kaliop Digital Commerce (https://digitalcommerce.kaliop.com) All Rights Reserved. * https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) * cnc_cataloggenericproductitem_m2 * <[email protected]> */ declare(strict_types=1); namespace Cnc\CatalogGenericProductItem\Plugin\ViewModel\Product; use Cnc\CatalogGenericProductItem\Block\Product\ProductList\Item\Block as CncProductListItemBlock; use Kaliop\CatalogGenericProductItem\Block\Product\ProductList\Item\Block; use Kaliop\CatalogGenericProductItem\ViewModel\Product\Item as ViewModelProductItem; use Magento\Catalog\Api\Data\ProductInterface; use Magento\Framework\View\Element\BlockInterface; class Item { /** * If block type class name is the default one * We change it to the project custom one * And avoid to declare it each time we will need to call 'renderProductListItem' method from template * * @param ViewModelProductItem $subject * @param ProductInterface $product * @param BlockInterface $parentBlock * @param array $params * @param string $templateName * @param string $blocTypeClassName * * @return array */ public function beforeRenderProductListItem( ViewModelProductItem $subject, ProductInterface $product, BlockInterface $parentBlock, array $params = [], $templateName = 'Kaliop_CatalogGenericProductItem::item.phtml', $blocTypeClassName = Block::class ): array { if ($blocTypeClassName == Block::class) { $blocTypeClassName = CncProductListItemBlock::class; } return [$product, $parentBlock, $params, $templateName, $blocTypeClassName]; } }