Posts de uma categoria na barra lateral

Esta é uma funcionalidade muito procurada, como mostrar um certo número de postagens em uma área do site, como na barra lateral, rodapé etc, isso pode ser feito sem precisar de nenhum plugin.

Aqui no site você já deve ter reparado que há uma estrutura diferente de se mostrar as postagens, principalmente na página inicial. Isso é possível porque o WordPres permite que se obtenha e mostre postagens em qualquer arquivo do tema usado para renderizar o conteúdo.

Vamos ver como mostrar uma lista de 10 postagens de uma categoria qualquer na barra lateral.

Início

O arquivo da barra lateral por padrão é sidebar.php. Você deve observar se há código para exibição de widgets, algo como:

<div>
<ul>
<?php if ( !function_exists('dynamic_sidebar')
            || !dynamic_sidebar( ) ) : ?>
<li> </li>
<?php endif; ?>
</ul>
</div>

Neste ponto você deve optar por adicionar o bloco de postagens antes ou depois de qualquer widget que use na barra lateral. Eu acho que se estamos tendo este trabalho para mostrar postagens extras, então é mais óbvio que os widgets fiquem depois.

Em um exemplo:

Mostrar 10 postagens da categoria ‘Plantas’ em uma lista. O resumo da postagem deve ser mostrado assim como o título da postagem com link. No início do bloco, mostrar o nome da categoria (Plantas) e sua descrição.

Acima do código de widgets, adiciona-se o seguinte:

<?php query_posts('category_name=plantas&showposts=10'); ?>
<h2><?php echo single_cat_title(); ?></h2>
<div><?php echo category_description( ''); ?></div>
<?php while (have_posts()) : the_post(); ?>
<ul>
<li><h2><a title="<?php the_title(); ?>" href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2><?php the_excerpt( ); ?></li>
</ul>
<?php endwhile; ?><?php wp_reset_postdata(); ?>

A função wp_reset_postdata deve ser adicionada no final para não ecoar a consulta, ou seja, se outra consulta existir após esta, talvez mostre postagens repetidas.

Outras formas de obter postagens

Além de informar o nome simples de uma categoria você pode usar:

  • tag
  • autor
  • postagem específica
  • ano, mês, dia, hora, minuto etc
  • valor de campo personalizados
  • status do usuário (logado ou não)

Você pode ordenar as postagens por nome do autor da postagem, título, data, data de modificação etc.

Talvez você queira mostrar postagens de mais de uma categoria:

Saiba mais sobre esta função no Codex.

Resumo ou Conteúdo

Você deve ter experimentado usar the_content para mostrar trecho da postagem até a tag de separação <!--more-->, no entanto não é possível usar a função the_content em outros arquivos além de index.php.

Na página da função the_content há um aviso:

A tag <!--more--> não funciona e é ignorada em arquivos de modelos, como single.php, onde apenas uma postagem é mostrada.

Realmente, se usar the_content no código acima em outros arquivos como do rodapé, você acaba com a postagem toda sendo mostrada, ou seja, não vai mostrar até encontrar a tag more! Neste site, usei esta função na barra lateral, mas criei condicionais para mostrar outros conteúdos em páginas de postagens, como você pode notar, em postagens nunca é mostrado trecho do conteúdo, apenas link, thumbnail ou resumo.

Posts de uma categoria na barra lateral é um artigo sobre Como mostrar um conteúdo específico Códigos http://dianakcury.com/wordpress-pt/codigos-pt/posts-de-uma-categoria-na-barra-lateral#respondDiana K. Cury http://dianakcury.com/wordpress/wp-content/themes/di3554/img/card.png

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *