在Magento 2.3中禁用产品视图的价格块缓存,您可以按照以下步骤进行操作:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Custom_DisablePriceCache',
__DIR__
);
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Custom_DisablePriceCache" setup_version="1.0.0">
<sequence>
<module name="Magento_Catalog"/>
</sequence>
</module>
</config>
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Catalog\Block\Product\ListProduct">
<plugin name="disable_price_cache" type="Custom\DisablePriceCache\Plugin\DisablePriceCachePlugin" sortOrder="1"/>
</type>
</config>
<?php
namespace Custom\DisablePriceCache\Plugin;
class DisablePriceCachePlugin
{
public function afterGetCacheLifetime(\Magento\Catalog\Block\Product\ListProduct $subject, $result)
{
return null;
}
}
php bin/magento cache:clean
完成以上步骤后,产品视图的价格块缓存将被禁用。请注意,这个解决方案是通过创建一个自定义模块并使用插件来实现的。
领取专属 10元无门槛券
手把手带您无忧上云