Fórum OpenCart Brasil

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

Suporte geral sobre problemas técnicos para OpenCart v2.x.
#58812
Olá pessoal! Como posso fazer um teste no OC 2.0.1.1 para saber se o cliente está logado na Página individual dos produtos (product.tpl). Utilizo o teste <?php if ($logged) { ?> para as demais páginas e módulos e funciona, somente não funciona na referida página.
#58847
valdeir2000 escreveu:Coloca esse código no product.php e daí pode utilizar o atual no tpl.
Código: Selecionar todos
$data['logged'] = $this->customer->isLogged()
Olá Valdeir, obrigado pela resposta. Meu conhecimento de PHP é intermediário, porém somente em ambiente estruturado e não me aventurei em orientação a objetos. O que me limita em algumas coisas.

Acho que entendi a lógica... é preciso setar o teste em outro local para recuperar na TPL do product; porém como são varias as páginas "product.php", qual seria a correta? E como seria seria essa inserção da linha "$data['logged'] = $this->customer->isLogged()"? Literalmente assim ou em forma de função?

Caso possa me ajudar te envio o conjunto de extensões OCMOD para Opercart 2.0.X que adaptei que só torna visível o cadastro de contas, os botões de compra e o carrinho somente para clientes logados. Como uma forma de vender apenas para clientes pré-cadastrados pelo administrador.

Só está me faltando a página individual de produto, que depende deste teste!

Também te envio a extensão VQMOD para as versões 1.5.X que tem a mesma função.
#58902
Esse código ele chama uma função que vai retornar verdadeiro (true, caso o cliente esteja logado) ou falso (false, caso o cliente NÃO esteja logado).

Como você quer fazer isso na página de produto, é necessário criar essa variável para poder utilizar no arquivo de template (.tpl)

É só ir no arquivo catalog > controller > product > product.php > procurar o código "public function index() {" e abaixo desse código inserir o código já mencionado.
Isso vai fazer com que o arquivo de template tenha essa informação que precisa.
#59798
Valdeir2000

como faço exatamente o contrário dessa situação, pois na versão 2.0.2.0 traduzida (pt-BR) essa função de desabilitar os preços caso o usuário não esteja logado já vem customizada, porém é exatamente o contrário, eu não quero que minha loja fique sem exibir os preços, mesmo que seja para visitantes, e não estou conseguindo habilitar a visualização dos preços, ou seja, para mim é importante que o preço dos produtos esteja incondicionalmente exibido, seja para usuários logados ou visitantes... poderia me dar um help aqui?
#61338
Oi Valdeir, obrigado pela dica, funcionou somente depois que voltei o idioma da minha área de Administração para inglês. Creio que seja um bug na tradução deste módulo, pois somente em inglês que ele reexibiu os valores.

Porém agora estou com outra falha, os valores em promoção não estão sendo exibidos e calculados quando o usuário "consumidor" está logado.
Somente quando não está logado (logout) é que estão sendo exibidos os valores com desconto. Como corrigir esta falha? - parece ser haver aos grupos de usuários como "consumidores" e "administradores" ... estou tentando depurar essa falha.

Grato!

Gente preciso de ajuda urgente. Na migraç&a[…]

Caro @reds , muito obrigado pela resposta.

PHP 8+ incompatibilidade

Toda tradução para a versão 3[…]

Ola @alex3257 Se você precisa apenas ver […]