Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte geral sobre problemas técnicos para OpenCart v2.x.
Avatar do usuário
Por valdeir2000
Mensagens Especiais
#68941
Você pode fazer dessa forma para ocultar um produto da busca.
Substitua a linha 193 (no meu arquivo é essa linha)
Código: Selecionar todos
$product_data[$result['product_id']] = $this->getProduct($result['product_id']);
por
Código: Selecionar todos
if (!in_array($result['product_id'], $products_blocked)) {
  $product_data[$result['product_id']] = $this->getProduct($result['product_id']);
}
E adicione o código abaixo depois de
Código: Selecionar todos
$query = $this->db->query($sql);
no mesmo arquivo (no meu arquivo é na linha 190.
Código: Selecionar todos
$products_blocked = [41,42,43,44,45,46,47,48,49,50]; //Preencha com o ID do produto que deseja não exibir
Acho que isso vai resolver, apesar de ser trabalhoso.

E para ocultar de uma categoria específica eu recomendar não cadastrar o produto nessa categoria.
Por flaviovico
#68949
Obrigado Valdeir, ajuda bastante, mas como são muitos produtos e o cliente pode resolver de uma hora ou outra deixar este produto assim fica complicado.
O quadro é o seguinte o cliente tem alguns produtos que são usados para brinde e que tem o preço 0,00, mas quando fazemos a busca estes produtos são exibidos, talvez se eu fazer este mesma ideia mas para como produtos com preço 0 talvez funcionaria né.
Avatar do usuário
Por valdeir2000
Mensagens Especiais
#68955
O arquivo é catalog/model/catalog/product.php

Depois dessa sua explicação ficou BEEEEM mais fácil de entender.
Abra o arquivo acima, e substitua a linha em amarelo por https://github.com/opencart/opencart/bl ... ct.php#L78
Código: Selecionar todos
$sql .= " LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND p.price > 0";