"Esse blog foi criado para compartilhar minhas pesquisas pela web, atividades profissionais e momentos de lazer (gastronomia, cultura, baladas e outros). Espero que aproveitem o conteúdo e aguardo comentários."

Pesquisar no Blog

6.7.12

Como criar uma Página de Posts no WordPress

wordpressComecei a estudar um pouco sobre o WordPress e encontre esse ótimo material no Fórum do Software

Uma dúvida muito comum entre os usuários do Wordpress é como criar uma "página" só com "posts" de uma categoria. Isso na verdade é uma confusão entre o conceito de página e post. A primeira é feita para conteúdo estático, que não faz parte de uma sequência de posts como seriam, por exemplo, as notícias de um site ou os posts normais de um blog. No WordPress, o conceito de "páginas" está mais ligado a uma página estática tipo "Quem somos" ou "Contato".
De qualquer forma, acredito que as pessoas queiram isso para poder inserir um link no menu principal junto com as outras páginas e acessar uma categoria, ao invés de dividir o menu das páginas e o das categorias.
Um bom exemplo é uma site de um fotógrafo: ele pode criar páginas de serviços e produtos, biografia, preços, etc. Essas são todas páginas no sentido original do WordPress. Mas ele pode querer inserir no mesmo menu um link para uma seção do site que mostre todos os trabalhos dele, classificados como Portifólio. Aí está o problema, porque o link tem que ser para uma seção com vários posts, e não para uma página com conteúdo estático.
Mas como o WordPress permite muito personalização, e é possível fazer isso também, através dos Page Templates.

Crie um template personalizado para a página:

1. Copie a página que o seu tema usa para mostrar as páginas. Normalmente é a page.php, mas pode ser a index.php caso a primeira não exista. Consulte a Template hierarchy se estiver em dúvida. Simplesmente faça uma cópia da page.php (duplique o arquivo e deixe na mesma pasta em que a original se encontra, ou seja, na pasta do tema).
2. Renomeie-a para o nome que quiser (de preferência um que te permita identificar com facilidade do que se trata). Ex.: noticias.php;
3. Coloque o seguinte código logo no início do novo arquivo (noticias.php, no caso). Certifique-se de não deixar nenhuma linha ou espaço em branco antes.

<?php
/*
Template Name: Noticias
*/
?>

4. Agora é hora de editar o arquivo noticias.php para que ele mostre uma lista dos posts que vc quer. Para isso, use a função query_posts().
5. Identifique onde começa o Loop do Wordpress. Procure por

<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>

Este é o início do Loop. Antes dele, coloque:

<?php query_posts('');?>

Dessa forma, a página mostrará todos os posts, observando o número máximo por página definido nas configurações.

<?php query_posts('cat=3');?>

Dessa forma, a página mostrará os posts da categoria com ID=3. Se quiser mostrar os posts definidos com a categoria Portifolio, identifique seu ID e substitua na função.
A partir daqui, muitas combinações são possíveis utilizando query_posts. Consulte a documentação e adapte-a às suas necessidades.
Crie a página e atribua o template criado
6. Se ainda não o fez, crie uma página normal no WordPress chamada Portifolio, ou dê o nome que quiser.
6. À direita, no painel de edição da página, procure a opção Modelo, dentro da caixa Atributos.
7. No menu drop-down, procure pelo modelo Portifolio, conforme você nomeou no passo 3.*
8. Clique em Atualizar ou Publicar Página, conforme for o caso.
* Alguns usuários (eu inclusive) têm tido problemas porque a opção "Page Template" não aparece. Nesse caso, troque o tema para o default, e depois volte ao seu tema original. Isso parece resolver a questão (não me perguntem o porquê, mas comigo funcionou).

5 comentários:

  1. Show de Bola Alexandre.
    Excelente Post, me foi muito útil no meu blog :D

    ResponderExcluir
  2. onde eu encontro o Loop do Wordpress?

    ResponderExcluir
  3. Sabe como eu poderia fazer isso no Blogger?

    ResponderExcluir
  4. A paginação não funciona.

    ResponderExcluir
  5. Segui as instruções deste post e o novo modelo de página para postagens exibiu
    (a) uma mensagem informando que "a minha pesquisa não atendia os critérios fornecidos" e
    (b) o rodapé do tema, como conteúdo da página, mas com as cores trocadas e layout quebrado.
    Essa só dica funciona com os modelos que já vem com o Wordpress (Twenty...) ou devo consultar o autor do modelo?

    ResponderExcluir