Como adicionar uma Sidebar no WordPress

Como usar Widgets no WordPress

Como usar Widgets no WordPress

Mais um artigo sobre WordPress, dessa vez vou falar um pouco sobre um tópico muito recorrente em relação a criação de Temas para o WordPress.

Bom todos devem estar cientes que é possível adicionar complementos a sua barra lateral com uma ferramenta chamada Widget, porém para que você ou o cliente possa usufruir de tal facilidade você deve preparar seu Tema para aceitar o dito cujo.

Contudo normalmente a galera não sabe realmente como Implementar da maneira correta nos Temas, e o artigo tem este propósito, explicar como fazer seu tema aceitar os Widgets da maneira correta.

Vamos começar acessando o arquivo functions.php do tema que desejamos implementar, e devemos acessar este arquivo pois nele iremos encontrar todas as funções que o nosso tema vai abrir antes de ser interpretado pelo sistema, assim sendo podemos declarar funções ali e usar em uma página qualquer por exemplo.

Após aberto o arquivo, adicione antes de tudo o seguinte código e leia o que vem em seguida para entender como configurar:

<?php if ( function_exists('register_sidebar') )
    register_sidebar(array(
		'name'=>'Barra lateral Direita',
		'before_widget' => '<div id="%1$s" class="%2$s">',
		'after_widget' => '</div>',
		'before_title' => '<h3 class="title">',
		'after_title' => '</h3>',
    )); ?>

Vamos por partes, primeiramente estamos verificando se a função usada para o registro de Sidebar está disponível, caso tal fato seja verdadeiro, iremos ativar a função declarando um array com os algumas variáveis, que definem algumas opções.

  • name - Define o nome que você vai dar para sua barra lateral, lembre-se de dar um nome indicativo do que ela contém
  • before_widget – Define o que vem antes de cada um dos Widgets, assim usamos duas variáveis [%1$s e %2$s] para poder identificar qual widget esta dentro desta div, assim podemos adicionar classes exclusivas de estilo dependendo do conteúdo.
  • after_widget – Basicamente define o término da caixa de um Widget, por exemplo </div>
  • before_title – Define o que vem antes do título do Widget, isso é importante para fazer o estilo do título, é bom usar por exemplo um <h3>
  • after_title – Define o final do título, apenas feche a tag aberta antes, que no meu caso foi a <h3>

Então após feito a configuração da sua Barra Lateral, vamos implementar no arquivo sidebar.php o código que importa a Barra Lateral. Para isso adicione o seguinte código:

	<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('Barra lateral Direita') ) : ?>
	<!-- Aqui você coloca algo que deve aparecer quando não tem nenhum Widget -->
	<?php endif; ?>

Bom não esqueça de colocar ali onde eu coloquei ‘Barra lateral Direita’, você coloca o nome da barra que deseja importar. E não se esqueça que você deve sempre deixar uma opção, para caso não tenha nenhum widget, não fique sem nada.

Em suma para fazer com que a sua Sidebar aceite os famosos Widgets da maneira correta e não deixe erros. Eu vou responder qualquer dúvida, e caso tenha algo a adicionar também comentem, pois ai eu adiciono para tornar o artigo mais completo.

, , , , , , , , , , ,

Comentários (25)

  1. Tiaguinho

    on 25/01/2011 at 20:15 said:

    Gustavo,

    Cara, valeu mesmo!
    Eu estava precisando e com o seu artigo conseguí colocar três colunas que só aparecem na home do template. E olha que eu não sei nada de php.

    Valeu!

  2. Robert

    on 09/02/2011 at 03:15 said:

    Nossa show !
    vlw msm.

    Mas e esse esquema seu de comentario, como coloco um desse no meu site (wordpress.org) ?

    vlw !

  3. Robert

    on 09/02/2011 at 03:15 said:

    Se possivel responda por email :D
    vlw

  4. christian

    on 19/05/2011 at 11:47 said:

    Parabéns! simples rápido e prático! abraços!

  5. porque quando insiro qualquer outra coisa (uma imagem por exemplo) na barra lateral, some o que estava a vista? isto acontece em meu blog no WordPress, já tentei por várias vezes inserir uma imagem ou um banner na barra lateral primaria de Widget, e nem aparece o que inseri e ainda some o que estava publicado. Por que?

  6. thiago

    on 15/09/2011 at 10:33 said:

    Como eu defino o que vai aparecer no menu?
    No caso o meu sidebar tem as paginas e nao queria que aparece as subpaginas

    • Você pode utilizar o menu que está no WordPress 3+ para poder criar uma estrutura de menus personalizada. No menu lateral de seu tema, em Aparência clique em Menus.

      Ai lá você terá como criar este menu que comentou. Qualquer dúvida só perguntar que eu tento ajudar Thiago.

  7. thiago

    on 16/09/2011 at 10:36 said:

    Deu certo aqui valeu…

  8. Eu consegui inserir a barra e td bonitim, mas acontece q qndo insiro conteúdo em uma, o mesmo conteúdo sai na outra!!! Como consertar isso???

    *eu dei nomes diferentes a elas*

  9. Airtron lopes

    on 07/10/2011 at 13:45 said:

    Pwo fiz tudo certo:
    Coloquei o código no function.php do meu tema, depois coloquei o outro código no meu arquivo sidebar. mas no painel do wordpress diz ainda que nehuma barra lateral foi definida!
    onde errei?

    • Olá Airton,

      Procure ver se você não colocou o código com os [pre]< ?php ?>[/pre], se colocou verifica se já não tinha aberto essa tag antes. Se não me manda um e-mail com anexado o functions.php para eu dar um check.

      Até,

  10. Oi Gustavo!

    Sou meio novato em customizar wordpress… Estou buscando uma forma de tirar aquela barra de data de postagens que fica sempre ao lado do blog? Vc sabe me dizer o que posso fazer? Tb, fiquei um pouco em dúvida sobre o que seriam as widget.

    Desde já agradeço irmão!
    Abraços!

    • Olá Samuel,

      Seguinte, isso você tem que ir na barra lateral, da sua administração e procurar pelo item Aparência -> Widgets, e remover da área da direita, que é onde ficam os Widgets ativos, o item de Arquivo.

      Os widgets, são pequenos módulos para o site, que podem ser encaixados em ordem diferente e não dependem de uma ordem para funcionar. São independentes, e muitas vezes tem propósitos completamente opostos.

  11. obrigado ajudou bastante.

  12. Para inserir no site

  13. leandro

    on 29/01/2012 at 22:46 said:

    e como eu faria para por uma barra lateral esquerda =(

    To procurando isso a dias!!

    Se puder me ajudar ficarei muito grato!

    • Existem algumas formas de se fazer isso, mas a diferença que ai já não é no WordPress a questão, ai vai para CSS/HTML, em como fazer para posicionar o conteúdo de forma a ter uma barra lateral.

      Se você quiser ter mais de uma barra lateral é só colocar o código duas vezes, e modificar o nome para ter duas barras diferentes, e na hora de fazer a chamada basta buscar pelo nome da barra criada no local que quer a barra.

  14. Ola,

    Eu nao sei mexer com html, e estou tentanto colocar uma barra lateral no wordpress pra colocar anuncios, acredito que o que voce ensinou seja simples, mas teria como vc me dizer aonde eu coloco os codigos, assim uma vez que eu abro as pastas que vc flaou, tem um local certo aonde eu devo inserir os codigos, em qual local, antes de que ou depois de que.

    Obrigado

  15. Soraia

    on 02/04/2012 at 17:58 said:

    Nõ entendi, de verdade, eu tentei, mas não sei onde achar esses condigos, .
    tipo esse php eu acho no meu pc???
    pq n abre mesmo, e tipo, os gadges, tem o menu personalizado, é isso/? eu fiz e nao deu em nada……
    Me ajuda?
    Obrigaasa

    • Olá Soraia,

      Depende, você está usando o WordPress no seu servidor? Se sim os arquivos são aqueles referentes ao tema que está ativado, normalmente em wp-content/themes/nomedotemaativo.

      Se não explica melhor o que você não conseguiu que eu tento ajudar.

Deixar uma Resposta

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>