Blocos Estáticos

Blocos estáticos fazem parte do gerenciamento de páginas e conteúdo do Magento. Um módulo especializado na criação de pequenos “pedaços” de páginas. Como por exemplo: banners, links, informações de pagamento, selos, plugins de mídias sociais, etc.

O interessante é que apesar do nome ser “Bloco Estático”, o conteúdo não será necessariamente estático. Pois podem ser inseridos widget’s ou chamadas externas para outros arquivos que possuem conteúdo dinâmico.

O post Páginas em CMS possui uma explicação muito complementar à esta, sugiro que leiam também.

Criando o bloco

Para criar um bloco de conteúdo acesse:

CMS > Blocos Estáticos [+ Criar Bloco]

Preencha os seguintes campos:

Título – Um título que identifique o bloco internamente, para controle no backend – mas também pode ser usado no frontend.

Identificador – O código ID do bloco, que será usado como referência na chamada deste bloco.

Visão – Caso você tenha várias visões de loja, pode indicar quais visões tem permissão para exibir o código.

Status – Se o bloco está habilitado ou não no sistema.

Conteúdo – Aqui você cria o conteúdo citado no início do post (banners, telefones, avisos, selos, etc). E também pode inserir widget’s e invocar outros arquivos.

Assim que você salvar este bloco, pode fazer a chamada deste em diversos locais.

Carregando o bloco

O bloco pode ser carregado de diversas formas, uma delas é via widget. Veja o post Widgets – Plugando Janelas.

No gerenciamento de páginas, um bloco estático pode ser carregado via widget usando o comando:

{{widget type="cms/widget_block" template="cms/widget/static_block/default.phtml" block_id="1"}}

Nesse caso foi informado o ID do bloco que será apresentado na página. Outra maneira de chamar o bloco pelo conteúdo, ainda mais simples seria:

{{block id="aqui_nome_do_block"}}

Ainda no gerenciamento de páginas (ou produtos), na parte “Visual” onde você pode adicionar ou remover blocos em XML, poderia ser usado:

    
        aqui_nome_do_block
    

Esse mesmo código vale para arquivos em XML que fazem parte do seu leiaute.

No gerenciamento de categorias você pode inserir um bloco estático facilmente, usando a aba “Display Settings“.

bloco estatico em categoria

Agora se você quer carregar um bloco diretamente pelo phtml, sem que ele seja referenciado no XML, vai precisar usar o código:

load('aqui_nome_do_block');
echo $block->getTitle();
echo $block->getContent();
?>

E dessa forma podemos incluir blocos estáticos de forma dinâmica por todo template, tornando assim seus temas mais poderosos e personalizados. “Free your mind!

Sucesso!