Manipulando o TopLinks

Vou começar explicando o que são Top Links para não haver nenhuma confusão.

Primeiro, não confunda Top com TOP10. Top Links não significa que são os melhores links do site.

Segundo. No Magento existe TopMenu e TopLinks, ambos ficam no alto da página. Mas TopMenu exibe o menu de categorias do site, enquanto TopLinks mostra os links de comunicação com o cliente (Minha Conta, Carrinho, Meus Favoritos, Entrar, etc.)

Vejamos então como são construídos esses links, e como podemos incluir/excluir opções.

As Páginas

A maioria dos desenvolvedores inicia procurando pelos links dentro das páginas phtml, pois um link é uma tag html.

Mas não no Magento. Como o template é construido e gerenciado por XML, os links do sistema que pertencem ao TopLinks também são criados em xml (por padrão).

Até a versão 1.4.0.0 do Magento, a página responsável por carregar a lista de links (toplinks) era:

app > design > frontend > base > default > template > page > html > top.links.phtml

A partir da versão 1.4.0.1 essa página foi substituída por:

app > design > frontend > base > default > template > page > template > links.phtml

Então se você deseja alterar o formato de apresentação dos links, é a página links.phtml que você deve alterar. Lembrando que a parte gráfica (cores, tamanhos, fontes) você edita no CSS (styles.css).

Onde estão os links – XML

A estrutura de templates do Magento funciona com blocos de estrutura e blocos de conteúdo. Recomendo que você leia o post Estrutura de templates para entender um pouco melhor.

No arquivo page.xml, o sistema cria o esqueleto da página, sua estrutura base para receber o conteúdo de forma dinâmica. Então dentro deste arquivo encontramos o bloco:


E dessa forma todos os outros xml’s podem fazer referência a este bloco para adicionar conteúdo (links).

Os arquivos checkout.xml, wishlist.xml, e customer.xml criam blocos com informações de links, e tudo que precisam fazer é indicar onde esses links serão exibidos – neste caso na referência “top.links“.

Exemplo do checkout.xml inserindo os links: CarrinhoFechar Pedido

    
        
        
    

Exemplo do wishlist.xml inserindo o link: Meus Favoritos

    
    wishlist_link

Exemplo do customer.xml inserindo os links: Minha ContaEntrar/Sair

    
    
        My Account10
    


    
        Log Out100
    


    
        Log In100
    

Perceba as diferenças na criação de cada link. Alguns deles dependem de pré-condições para serem exibidos na tela, outros usam métodos (method) próprios para poder exibir informações extras junto ao link (como quantidade de itens no carrinho por exemplo).

Criando opções de links

Vamos começar analisando a estrutura de tags para criação de um link via xml:

Criando link Fale Conosco – abra o arquivo contacts.xml e insira dentro da tag default o código:

    contactsContact Ustrue900

Para encerrar um exemplo de como remover um determinado link em uma atualização de leiaute por xml:


ou então:


Agora uma boa notícia! O footer_links (links do rodapé) funciona praticamente da mesma forma. Bons estudos!

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

Sucesso!