Como substituir o bloco VirtualType no Magento 2, desejo substituir o seguinte bloco virtual por meu próprio bloco,
<virtualType name="Magento\CatalogSearch\Block\SearchResult\ListProduct" type="Magento\Catalog\Block\Product\ListProduct">
<arguments>
<argument name="catalogLayer" xsi:type="object">Magento\Catalog\Model\Layer\Search</argument>
</arguments>
</virtualType>
Então, eu tentei substituí-lo do meu módulo personalizado di.xml
assim,
<preference for="Magento\Catalog\Block\Product\ListProduct" type="My\Vendor\Block\Product\ListProductSearch" />
Mas não funciona.
Então, qual é a maneira correta de substituir uma classe de tipo virtual no Magento 2?