, , ,

Exibindo um elemento apenas na página inicial, ou de marcadores, ou de postagens, no Blogger

Blogger Hacks 

Este Hack é muito importante para quem quiser deixar seu Blogger/Blogspot com uma cara mais profissional. Consiste em esconder ou exibir widgets dependendo do tipo de página que está sendo visualizada, como a página inicial, de postagens, marcadores e arquivo. Com ele, podemos, por exemplo, exibir um banner ou anúncio apenas quando o usuário estiver vendo a página inicial do blog, e outro, em local diferente, quando ele estiver visualizando uma postagem. As possibilidades são imensas!

Para controlar a exibição de um elemento/widget/gadget no seu template, faça o seguinte:

Acesse o seu Painel do Blogger e selecione Layout, então clique em Editar HTML para entrar no modo de edição do código do seu Template. Então marque a opção Expandir modelos de widgets.

Não se esqueça de fazer o backup do seu template antes de realizar as alterações no código, clicando em Baixar modelo completo.

Encontre o widget que você deseja controlar a exibição, através do título dele (utilizando o Ctrl+F do seu navegador). Caso o widget não tenha um título, vá em Elementos de Página e dê um título a ele (poderá ser removido depois). Você encontrará algo parecido com isso:

<b:widget id='HTML1' locked='false' title='Título' type='HTML'>

Este é apenas um exemplo, o trecho não precisa ser HTML1, ou locked=’false’. Você deverá encontrar seu widget através do título.

Agora vamos analisar o restante do código, para que possamos aplicar o Hack (parte vinho): 

<b:widget id='HTML1' locked='false' title='Título' type='HTML'><b:if cond='data:blog.pageType != "item"'>

<b:includable id='main'>

(código específico da variável)

- código fonte do Widget -

</b:if>

</b:includable>
</b:widget>

A parte “- código fonte do Widget –” é apenas uma representação do código do Widget que você encontrará entre as partes verdes.

Então vamos acrescentar o código entre <b:includable id='main'> e </b:includable>, que está em vinho, SUBSTITUINDO a parte “(código específico da variável)” pelo código desejado: 

Mostrar apenas nas páginas de postagens:
<b:if cond='data:blog.pageType == "item"'>

Mostrar apenas na página incial:
<b:if cond='data:blog.homepageUrl == data:blog.url'>

Mostrar apenas em uma postagem específica:
<b:if cond='data:blog.url == "URL do post"'>

Mostrar na página inicial, de marcadores e arquivo:
<b:if cond='data:blog.pageType != "item"'>

Mostrar apenas em uma página de marcador específica:
<b:if cond='data:blog.homepageUrl == "http://URL_do_Blog/search/label/Marcador"'>

Mostrar nas páginas de arquivo:
<b:if cond='data:blog.pageType == "archive"'>

Mostrar na página de marcadores e postagens:
<b:if cond='data:blog.homepageUrl != data:blog.url'>

Mostrar apenas na página de marcadores:
<b:if cond='data:blog.homepageUrl != data:blog.url'> 
<b:if cond='data:blog.pageType != "item"'>

Atenção: Neste caso deve ser acrescentado mais um </b:if> antes de </b:includable>

Por exemplo, vamos supor que eu queira que meu widget de título “Publicidade” apareça somente na página inicial. Então vou encontrá-lo através do título e acrescentar o código, deixando-o assim:

<b:widget id='HTML1' locked='false' title='Publicidade' type='HTML'><b:if cond='data:blog.pageType != "item"'>

<b:includable id='main'>

<b:if cond='data:blog.homepageUrl == data:blog.url'>

- código fonte do Widget -

</b:if>

</b:includable>
</b:widget>

O Hack também funciona para elementos que não sejam widgets, como partes em HTML. Neste caso, basta colocar o código em vinho antes do início do código e o </b:if> após o fim.

Visualize para ver se está tudo correto e clique em Salvar Modelo.

Agora os widgets aparecerão apenas nas páginas que você determinou.

Se o Hack não funcionar ou causar erros no seu template, desfaça as alterações clicando em Limpar Edições ou utilize o backup que você criou e clique em Fazer Upload, então refaça todo o processo.

Referências:
UsuárioCompulsivo | Scrapur