Fórum OpenCart Brasil

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

Suporte geral sobre problemas técnicos para OpenCart v3.x.
Avatar do usuário
Por Simone
#91071
Tenho uma loja de artesanato e os itens sem estoques são deixados para o cliente ver a qualidade da arte, porem eles não estão para venda. Nesse caso gostaria de retirar o valor, ficando apenas o título. Existe um modulo especifico para tal, ou alguma configuração a parte?

:arrow: versão 3.0.3.3 (Brasil 1.4.15)
#91072
Olá! Tudo bem?

Posso ajudá-la nessa questão. Desenvolvo módulos e tenho algumas ideias para a situação apresentada.

Segue o meu contato: 15 98152-9807.
#91153
Simone escreveu:Tenho uma loja de artesanato e os itens sem estoques são deixados para o cliente ver a qualidade da arte, porem eles não estão para venda. Nesse caso gostaria de retirar o valor, ficando apenas o título. Existe um modulo especifico para tal, ou alguma configuração a parte?

:arrow: versão 3.0.3.3 (Brasil 1.4.15)
Eu editei direto no codigo font.

no arquivo controller do produto catalog/controller/product/product.php

Após a linha
Código: Selecionar todos
$data['description'] = html_entity_decode($product_info['description'], ENT_QUOTES, 'UTF-8');

mais ou menos pela linha 260

adicione o seguinte código
Código: Selecionar todos
if ($product_info['quantity'] <= 0) {
				$data['stock'] = $product_info['stock_status'];
			} elseif ($this->config->get('config_stock_display')) {
				$data['stock'] = $product_info['quantity'];
			} else {
				$data['stock'] = $this->language->get('text_instock');
			}
Salve - (((Lembre-se de criar um cópia de backup antes de editar o seu arquivo

Localize o arquivo catalog/view/theme/seutema/template/product/product.twig

Localize o seguinte código
Código: Selecionar todos
{% if price %}
é onde é definido o preço la pela linha 100
Normalmente ele esta assim
Código: Selecionar todos
{% if price %}
          <ul .....
Antes deste código adicione o seguinte código
Código: Selecionar todos
 {% if stock >= 1 %}
Verifique onde a sua classe UL fecha, normalmente fica assim:
Código: Selecionar todos
 </ul>
          {% endif %}
logo após este código adicione
Código: Selecionar todos
  {% else %}
		  <ul class="list-unstyled">
                       <li></li>
			<li></li>
			<li></li>
                 </ul>
		  {% endif %}
Lembrando que o numero de <li> é somente para cobrir a altura do espaço, no seu layout deve alterar conforme a sua necessidade adicionando ou removendo.

O que o código faz, verifica se o estoque é maior ou igual a 1 unidade.
Se for maior ou igual a 1 exibe o preço
Se for menor 1 ou zero exibe as tag vazias.

Se precisar adicionar na lista de categoria
localize o arquivo Localize o arquivo catalog/view/theme/seutema/template/product/category.twig

Localize o código
Código: Selecionar todos
{% if product.price %}
        <p class="price">


Antes deste código adicione o seguinte código
Código: Selecionar todos
 {% if stock >= 1 %}
Localize </p>
Código: Selecionar todos
  {% endif %}
E feche </p>
Código: Selecionar todos
{% endif %}

Espero ter ajudado