Você pode tentar usar o Magento Plugin para aprimorar a funcionalidade existente de qualquer classe Abstract, embora o escopo da função deva ser Público. Recentemente, trabalhei no mesmo problema em que preciso excluir produtos com um atributo personalizado atribuído na lista de produtos visualizados recentemente .
Eu usei o plug-in para a função chamada getItemsCollection da classe Magento \ Reports \ Block \ Product \ AbstractProduct usando a seguinte sintaxe:
arquivo: app \ código \ Pacote \ Módulo \ etc \ frontend \ di.xml
<type name="Magento\Reports\Block\Product\AbstractProduct">
<plugin name="Package_Module::aroundGetItemsCollection" type="Package\Module\Block\Viewed" sortOrder="20"/>
</type>
file: app \ code \ Package \ Module \ Block \ Viewed.php
public function afterGetItemsCollection(
$subject, $result
) {
$result = $result->addAttributeToFilter('skip_hire_product', [['neq' => 1], ['null' => true]], 'left');
return $result;
}
Você também pode usar plugins anteriores e anteriores. Espero que este trabalho para você.