我试图使用插件系统修改列出的每个产品的块。
我能够以这种方式进行设置:
供应商/模块/etc/frontend/di.xml
<type name="MagentoCatalogBlockProductAbstractProduct">
<plugin name="vendor.module.category.products.list" type="VendorModulePluginBlockProductAbstractProduct" />
</type>
供应商/模块/插件/block/product/abstractproduct.php
<?php
namespace VendorModulePluginBlockProduct;
class AbstractProduct
{
public function afterGetProductDetailsHtml(
MagentoCatalogBlockProductAbstractProduct $subject,
$result
) {
// Here is where I want to pull product details like SKU
// I also want to pull my custom helper method here
return '<b>rendered additional html element</b>';
}
}
问题是我无法在afterGetProductDetailsHtml
中提取产品详细信息。有人知道该怎么做吗?预先感谢
您需要使用这样的插件的Instade instade,
<?php
namespace VendorModulePluginBlockProduct;
class AbstractProduct
{
public function aroundGetProductDetailsHtml(
MagentoCatalogBlockProductAbstractProduct $subject,
callable $proceed)
) {
// Here is where I want to pull product details like SKU
// I also want to pull my custom helper method here
return '<b>rendered additional html element</b>';
}
}