Definir posição do sidebar.
-
Galera,
Queria definir de algum modo se a página inicial, as pagina e os posts vão ter ou não um sidebar e em qual posição ele ficará.
Vi que para os posts e páginas, posso criar alguns “modelos” e creio que isso vai resolver meu problema.
Mas como faria isso para a página principal?
Pensei em criar uma área para edição do tema no admin e lá definir isso.
É uma boa ideia?
Se sim, poderiam indicar algum tutorial?
-
Olá, @ferferreira6.
Você pode criar diferentes tipos de sidebar e chamá-los de acordo com as condições que você especificar.
Por exemplo, você criou os arquivos sidebar.php, sidebar-home.php e sidebar-404.php e todos eles são diferentes. Você pode usar diferentes sidebar de acordo com a página:
<?php // Se for a página inicial, será exibido o que está no arquivo sidebar-home.php if ( is_home() ) : get_sidebar( 'home' ); // Se for a página 404, será exibido o que está no arquivo sidebar-404.php elseif ( is_404() ) : get_sidebar( '404' ); // Nas demais páginas será exibido o que está no arquivo sidebar.php else : get_sidebar(); endif; ?>
Você pode criar uma parte administrativa no seu tema onde o usuário escolhe o sidebar, a ideia ainda vai ser basicamente a mesma do código acima.
Referências:
https://developer.wordpress.org/reference/functions/get_sidebar/- Esta resposta foi modificada 7 anos, 6 meses atrás por Ramon Ahnert.
- Esta resposta foi modificada 7 anos, 6 meses atrás por Ramon Ahnert.
Opa, tudo bem?
Só complementando a resposta do colega:is_home funcionará para a Página Inicial quando a opção A página inicial mostra tem o valor Seus posts recentes.
Se tiver o valor Uma página estática (selecionar abaixo), is_home irá retornar verdadeiro apenas para Página de posts.
Dessa forma, is_home funciona para mostrar a Home do Blog e is_front_page para a página inicial do site (que pode ser também a página inicial do blog).
Oi @mariovalney e @rahmohn.
Muito obrigado pelas respostas.
Ficou muito claro sobre como vou exibir o sidebar, de acordo com as páginas.Aproveitando, teria uma outra parte da minha dúvida, que tem relação com isso que vocês responderam.
Teria uma forma simples de definir onde ficaria o sidebar, no caso, na coluna da esquerda ou na coluna da direita?Essa parte é front-end, ou seja, código de interface: HTML e CSS.
Você vai precisar alterar seu tema (se for um tema baixado, recomendo criar um Tema Filho).
Abraços
- O tópico ‘Definir posição do sidebar.’ está fechado para novas respostas.