Mostrar conteúdo de postagem ou página

Arquivos: footer.php, index.php, sibdear.php

Funções: get_post

Um recurso muito procurado é como mostrar uma determinado post ou página em um local do site. Veja como fazer do jeito certo, sem causa problemas!Enquanto query_post serve para modificar um loop e obter quanta informações puder, ele não deve ser usado quando se quer mostrar  o conteúdo de uma postagem ou página no site.

A função recomendada é get_post, um pouco chata de usar porque temos que usar o ID do post ou página e a saída pode ser meio deficiente se quiser um link permanente no título, link para comentar etc. O interessante desse modo, é que fica fácil formatar a saída se a ideia é só mostrar um conteúdo que poderá ser facilmente editado a qualquer hora.

Veja como fazer:

Inserindo o Código

Abra o arquivo que quer inserir o conteúdo, geralmente index.php ou sidebar.php, a vantagem deste código é que pode ser usado em qualquer lugar, sem problemas de ecoar o conteúdo ou confundir a paginação. Adicione o seguinte:

<?php
$id_do_post = 1677; // este é o ID do post
$o_id = get_post($id_do_post);
?>
    <!-- O meu post especifico -->
    <h2><?php echo $o_id->post_title ;?></h2>
    <span><?php echo $o_id->post_content ;?></span>
    <p><?php echo $o_id->post_date ;?></p>
    <!-- Fim do post especifico -->

No exemplo, mostramos o título (sem link), o conteúdo da postagem e a data de criação. Você pode resumir isso também desse modo:

<?php
$id_do_post = 1677; // este é o ID do post
$o_id = get_post($id_do_post);
echo '<h2>' . $o_id->post_title . '</h2><span>' . $o_id->post_content . '</span><p>' . $o_id->post_date  . '</p>';
?>

Outros dados

Há várias outras informações que você pode mostrar como autor, número de comentários, data da última modificação etc. Veja a lista completa no Codex.

Exemplos de Uso

Entre as coisas que pode fazer, está inserir uma página de boas-vindas ou com notas especiais, neste caso, você decide em editar a página ou mudar o ID para cada página que criar, cada vez que modificar o texto. Dependendo dos caso, você não precisa manter páginas com notas de problemas técnicos, por exemplo, então é só editar a postagem ou página e seu conteúdo estará no site!

Mostrar conteúdo de postagem ou página é um artigo sobre conteúdo, página, posts
  • Como mostrar uma postagem ou página específica no site
  • Como mostrar conteúdo de uma postagem ou página em qualquer lugar
conteúdo, página, posts Códigos http://dianakcury.com/wordpress-pt/codigos-pt/mostrar-conteudo-de-post-pagina#commentsDiana K. Cury http://dianakcury.com/wordpress/wp-content/themes/di3554/img/card.png

15 ideias sobre “Mostrar conteúdo de postagem ou página

  1. Edson Ney

    Oi Diana, boa tarde!
    Gostei muito do artigo.
    Usei a função prá exibir o conteúdo da página “Endereço” em todas as outras páginas do site, porém o conteúdo está vindo sem formatação, sem br e/ou p para quebra de linha.
    Tentei solucionar mas não consegui… pode me ajudar, por favor?

    1. Diana Autor do post

      Oi,
      Aqui está normal, talvez algum outro código está quebrando a formtação, por exemplo uma tag sem fechamento.

    2. Edson Ney

      Oi Diana, bom dia!
      Talvez seja mesmo algum problema no meu código.
      Mas eu não consegui encontrar… =)
      Através das referências do seu post, encontrei o código abaixo, que no meu caso funcionou. Você poderá explicar as diferenças entre eles muito melhor que eu…

      have_posts()) : $my_query->the_post();
      $more = 0;
      the_content();
      endwhile;
      ;?>

      Muito obrigado!!
      Abraço.

    3. Reginaldo Morikawa

      Eu tive o mesmo problema, tive que usar esta função (baseado nas variaveis aqui deste post):

      $o_id->post_content = str_replace(“\n\r”, ”, $o_id->post_content);

  2. Ivan

    Eu faço um site de tudo quanto é jeito em html5, css3, js, mas esse lance de PHP, preciso aprender o mais rápido possível, mas estou aqui para agradecer pelo post, foi elementar num novo projeto meu, pesquisei muito e ninguém tinha a solução, obrigado Diana, parabéns, um dia chego neste seu QI 🙂
    Abraço!

  3. Jorge

    Olá Diana,

    Ref: páginas wordpress

    Vejo constantemente seus comentários esclarecendo dúvidas relacionadas ao wordpress, Assim pode informar: Qual a melhor forma de fazer uma publicação, utilizar páginas ou post, Ocorre que tenho um Blog/site e percebi que as páginas publicadas o goolgle faz a indexação, porém na pesquisa orgânica não aparece o título da postagem, mas somente o nome do dominio. Exemplo nome do site/blog – Verdurasby.com.br/ titulo da postagem: verduras na feira – ao pesquisar no google pelo titulo – Verduras na feira, encontro no nome do site Verdurasby, já no post aparece sempre o título da postagem.

    Obrigado.

    1. Diana Autor do post

      Olá, isso pode ser causado por algum problema no código do seu tema, tente verificar com as ferramentas de Webmaster do Google.

  4. Wesley Lopes

    Parabéns pelo post. Pra ficar maravilhoso só faltou pegar a imagem destaque também, valeu pela força!
    To quebrando a cabeça pra descobrir. mas se puder ajudar? Opa…estamos aqui!

  5. Aline França

    Olá, Diana. Primeiramente parabéns pelo post.

    Estou fazendo como vc apontou, mas o código não reconhece a shortcode que está num formulário dentro da página. Alguma ideia?

    Desde já, agradeço.

    1. Diana Autor do post

      Olá!
      Para mostrar shortcodes nessa situação precisa usar o filtro the_content assim: apply_filters('the_content', $o_id->post_content);

Deixe uma resposta

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