Desenvolver com o WordPress é algo tão versátil e flexível, que o trabalho torna-se mais prazeroso e eficiente. Hoje o CanalWP vai ensinar a você como criar as suas próprias sidebars. Independente do seu tema, você será capaz de criar novas áreas para seus widgets e tornar a usabilidade dentro da plataforma mais fácil e personalizada para a necessidade do seu projeto ou negócio.
As WordPress dynamic_sidebar são utilizadas no desenvolvimento de temas e até para a customização de identidade visual, como para atribuir a LOGO de um site. Trabalhar com dynamic_sidebar permite que você instale widgets em qualquer lugar que você queira. Basta apenas, incluir no HTML do seu site a dynamic_sidebar que você deseja.
O primeiro passo para criar suas dynamic_sidebar é atribuí-las as suas páginas, e registrar sua sidebar. Localize o arquivo functions.php do seu tema e vamos começar a trabalhar nele. Precisaremos editar este arquivo, então utilize o software para edição de código de sua preferência ou acesse Aparência > Editor. É muito mais indicado que você use um editor de código, mas para pequenas alterações o Editor do WordPress pode ser bem útil.
Com o functions.php pronto para edição, você deve localizar a área onde suas sidebars são declaradas. Não é uma tarefa muito difícil. Você deve procurar por um bloco de código semelhante ao que vamos usar mais abaixo. Preste atenção aos detalhes e explicações que vamos ensinar. OK? Assim você conseguirá entender como que as coisas funcionam no WordPress.
Você deve copiar e colar o bloco de código dentro do arquivo functions.php, fazendo os devidos ajustes e salvando no final.
// Registro das suas widgets if ( function_exists('register_sidebar') ) { register_sidebar(array( 'name' => __( 'NOME PARA A SUA SIDEBAR'), 'id' => 'sidebar-1', 'description' => __( 'Breve descrição sobre esta SIDEBAR.'), 'before_title' => '<h1>', 'after_title' => '</h1>', ) ); }
Entendendo o código:
A primeira linha do nosso código verifica a existência de uma função nativa do WordPress, destinada aos registros de dynamic_sidebar.
Depois você consegue perceber que as linhas de código que começam o registro são exibidas. Aqui você deve especificar um nome ÚNICO para a sua sidebar – atribua um nome que você consiga localizá-la com facilidade na sua área de widgets no Dashboard (Aparência > Widgets).
O próximo passo é definir um ID, um código identificador, para a sidebar que estamos registrando. É importante ressaltar que esse ID deve ser único, ou seja, não pode haver outra sidebar com o mesmo ID.
Agora você vai digitar uma breve descrição sobre a sua sidebar. Digite um pequeno texto que informe em qual local a respectiva sidebar será exibida em seu site. Dessa forma fica mais fácil de personalizar sem se perder durante o processo.
Depois que você salvar o functions.php com a sua nova sidebar registrada, a área de widgets deve ficar bem parecido com isso:
Como dissemos no início deste post, você pode registrar quantas sidebars quiser e incluí-las onde desejar. Para fazer o registro de mais de uma dynamic_sidebar o processo é o mesmo. Acompanhe abaixo:
// Registro das suas widgets if ( function_exists('register_sidebar') ) { register_sidebar(array( 'name' => __( 'NOME PARA A SUA SIDEBAR'), 'id' => 'sidebar-1', 'description' => __( 'Breve descrição sobre esta SIDEBAR.'), 'before_title' => '<h1>', 'after_title' => '</h1>', ) ); register_sidebar(array( 'name' => __( 'NOME PARA A SUA SEGUNDA SIDEBAR'), 'id' => 'sidebar-2', 'description' => __( 'Breve descrição sobre a SEGUNDA SIDEBAR.'), 'before_title' => '<h1>', 'after_title' => '</h1>', ) ); }
Viu como é fácil? Basta repetir a lógica para registrar uma sidebar, respeitando as regras que listamos mais acima, como Nome único para cada sidebar e ID único. Salve seu arquivo functions.php e vamos continuar nossa implementação.
Agora que você já registrou sua sidebar e , precisamos colocar o código que as exibe em seu site. Com o arquivo referente ao local que você irá instalar a dynamic_sidebar aberto e pronto para edição, insira o seguinte código PHP:
if ( is_active_sidebar('sidebar-1') ) { dynamic_sidebar('sidebar-1'); }
Entendendo o código:
Aqui a primeira coisa que fazemos é verificar se a Sidebar realmente existe por meio da ID que foi especificada. Se ela foi registrada com a ID informada, a resposta de retorno para a condicional será TRUE (Verdadeiro) e partimos para o próximo passo.
Agora chegamos na função que irá imprimir em seu site a sidebar de ID ‘sidebar-1’. Isso quer dizer que, todos os widgets atribuídos a ela por meio de Aparência > Widgets serão listados. Se você colar esse código para exibir a sidebar, mas não tiver atribuído nenhum widget a ela, nada irá aparecer em seu site.
Boas práticas
Sempre utilize marcações HTML para organizar as estruturas de layout para o conteúdo do seu site, suas sidebars, cabeçalhos e rodapés. Estudar a plataforma WordPress, bem como linguagens que vão melhorar o desenvolvimento e aparência do seu site, são de grande valor para a sua carreira e negócio. Quando o assunto for funções e desenvolvimento WordPress, sempre tenha o Codex como sua ferramenta de consulta.
Deu erro na implementação do código para WordPress dynamic_sidebar? Reveja passo por passo e tente novamente. Se ainda assim você não conseguir, entra em contato com a gente. Teremos o imenso prazer de te ajudar e aumentar os nossos conhecimentos juntamente com você.
Se você gostou desse artigo considere compartilhar nas redes sociais, se lhe foi útil de alguma maneira deixe seu comentário, dúvida ou até mesmo sua experiência adicionando o código.
Ferramentas WordPress Veja Mais Ferramentas
Regenerate Thumbnail
WPForms
PixelYourSite PRO
fiz o passo-a-passo e deu certo apareceu o widget no painel de controle mas não apareceu na minha header.php como configurado atualizei a paginas, mas ela não apareceu, como faço pra configura o css.
Olá Rafa,
Para ter controle sobre o CSS você precisa apenas adicionar as classes CSS as tags HTML do conteúdo da sua widget.
Primeiro verifique se um texto simples está aparecendo no local que deseja (adicionando uma widget de texto e colocando qualquer texto), depois trate de adicionar os elementos html e classes CSS.
Abraço.
pessoal estou querendo colocar um widget abaixo do meu menu principal mas não consigo vizualiza no function.php a area de widget, pra fazer a criação da nova.
Olá, tentei fazer isso. Olha o que aconteceu com meu site, perdi ele todo?
Tá dando essa msg.
E agora?
Parse error: syntax error, unexpected ‘}’ in /home/nicho294/public_html/wp-content/themes/sparkling/functions.php on line 190
Me ajuda, por favor!
Olá Thalysson,
Tente remover o código que você adicionou e veja se volta ao normal.
Se seu arquivo functions.php tiver uma tag <?php no final, você precisa adicionar o código antes dessa tag.
Abraço.
Não consigo mais entrar. Quando jogo o nome do meu site para logar, aparece essa msg de erro.
É só você acessar seu site via FTP https://www.canalwp.com/guia-do-iniciante/ftp-transferir-arquivos-wordpress/ e remover o código do arquivo funtions.php.
Você também pode ir nos arquivos do seu tema (no lugar onde você comprou) e baixar o arquivo functions.php e substituir pelo atual.
Fico a disposição.
Abraço.
Gabriel Galvão,
vlw pela instrução.
Problema resolvido. :)
Excelente Thalysson!
Obrigado por nos informar.
Abraço.
Sendy, fiquei em dúvida sobre onde colocar o código que exibe a dynamic_sidebar. Seria em um arquivo dentro de alguma pasta do tema?
Olá Taysa, Você deve inserir o código em um dos arquivos (single.php, page.php, author.php, arquive.php, header.php, footer.php, sidebar.php) onde você quer que ele apareça. Para isso é importante entender o que cada um desses templates significa no WordPress. Por exemplo, header.php é o cabeçalho do seu site que normalmente é carregado em todas as páginas e tem o menu de navegação. O footer.php é o rodapé do seu site. Se você quer colocar em sua sidebar/barra lateral, procure o arquivo sidebar.php e faça testes inserindo o código para verificar onde ela vai aparecer. Lembre-se, pelo amor de deus, de criar… Continue Lendo »
Entendi, Gabriel! Muito obrigada pela ajuda, vocês estão de parabéns, o canal é ótimo e tem muitas dicas legais pra desenvolver projetos em WP! Abraço