Página 1 de 1

[Resolvido] Ocultar produto

Enviado: 26 Jul 2016, 17:27
por flaviovico
Pessoal, alguém tem alguma dica para ocultar produto na busca ou ocultar uma categoria especifica.

Obrigado

Re: Ocultar produto

Enviado: 26 Jul 2016, 22:23
por valdeir2000
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.

Re: Ocultar produto

Enviado: 27 Jul 2016, 09:36
por flaviovico
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é.

Re: Ocultar produto

Enviado: 27 Jul 2016, 09:40
por flaviovico
Valdeir, estou trabalhando com a versão 2.1.0.2 e não estou encotrando esta linha

Re: Ocultar produto

Enviado: 27 Jul 2016, 10:19
por valdeir2000
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";

Re: Ocultar produto

Enviado: 27 Jul 2016, 10:30
por flaviovico
Show Valdeir, muito obrigado