Usuário está logado?

Em algumas situações é importante saber se o usuário está logado ou não na loja. Seja para exibir um link, um preço, uma promoção ou uma página em especial.

Já vimos aqui no blog como ocultar o preço dos produtos para os visitantes e mostrar apenas aos usuários logados em: Preço apenas p/ usuários cadastrados.

Mas vamos ver abaixo como aplicar essa regra em outras situações usando duas formas diferentes, por xml e em php.

Arquivos XML

Usando tags em XML é possível fazer essa configuração na construção do layout, dentro dos arquivos XMLs, ou então nas atualizações de leiaute do CMS. Temos então duas tags:

Construir elementos se o usuário estiver logado:


Construir elementos se o usuário não estiver logado:


Podemos ver essa situação no arquivo customer.xml, onde o link (entrar/sair) é criado na página fazendo essa verificação:

    
        Log Out100
    



    
        Log In100
    
    

Neste exemplo foram usados links, mas você pode aplicar para qualquer elemento da página.

Arquivos phtml

Nos arquivos phtml inserimos uma linha em php que nos informa (true/false) se o usuário está ou não logado.

$this->helper('customer')->isLoggedIn()

Aplicando este código dentro dos arquivos phtml é possível alterar o desenho das páginas conforme o tipo de navegação (logado/não logado).

helper('customer')->isLoggedIn() ) { ?>
    

Claro que este código é só um exemplo de como pode ser utilizado.

Procure usar com moderação. Lembre-se de que a nova lei do comércio eletrônico Decreto Federal 7.962/13 exige que algumas informações sejam exibidas na página independente do usuário estar ou não logado/cadastrado.

Qualquer dúvida use o Fórum da Escola Magento.

Sucesso!