Início » » WordPress Tutorials » Aceder a dados de post fora do loop do WordPress

Aceder a dados de post fora do loop do WordPress

Este é um tutorial intermédio pois mesmo que copiem o código não está ao nível de todos os leitores conseguirem personaliza-lo sem algum conhecimento de programação.

Contudo a lógica for intendida consegue-se facilmente adaptar o tutorial de hoje ás necessidades que surgirem. Vamos lá começar.

Primeiro tens de editar o ficheiro functions.php que está dentro da pasta do teu theme, se não existe então cria o ficheiro.

No tutorial de hoje vou criar uma função que usando o ID do post vai buscar informação relativa a esse post como o titulo do post, data em que foi criado, conteúdo, id do autor, etc. Caso uses custom fields também vais poder usar esta informação.

A função que se segue deve ser colocada dentro do ficheiro functions.php. Ela vai buscar a informação ao post através do seu ID:

function busca_dados($postId) {
global $wpdb;
return $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE ID=$postId");
}

O código que se segue é adicionado directamente nos ficheiros do theme a onde queres que apareça a informação:

<?php
$dados = busca_dados(10);
echo $dados[0]->post_title; //Mostra titulo do post
echo $dados[0]->post_date; //mostra data do post
echo $dados[0]->comment_count; //mostra numero de comentarios
echo $dados[0]->post_content; /mostra conteudo do post
?>

Existe bastante informação que podes ir buscar a um único post, pessoalmente não conheço a onde possa estar a informação relativa a quais são todos os campos que a página de posts do WordPress possuí, mas de certo que olhando para ela ficas com uma ideia, só tens é de descobrir como se chama esse campo na base de dados.

Se alguém souber a onde está essa informação deixa comentário :)


Subscreve as Feeds

RSS Comentários Comentários

  1. Vê este artigo: http://wphackr.com/wordpress-post-variable-quick-reference/

    Basta que na tua função declarares global $post; e depois acedes a todos os dados respectivos.


    function busca_dados() {
    global $post;

    echo $post->post_title; //Mostra titulo do post
    echo $post->post_date; //mostra data do post
    echo $post->comment_count; //mostra numero de comentarios
    echo $post->post_content; /mostra conteudo do post
    }

Tags HTML suportadas nos comentários:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>