Image Image Image Image Image
Scroll to Top

Topo

14

maio
2012

Sem Comentários

Em Blog
Dados
Wordpress

Por Allison

Puxar informações de comentários do banco de dados do WordPress

Em 14, maio 2012 | Sem Comentários | Em Blog, Dados, Wordpress | Por Allison

Fonte: IMasters/Paulo Faustino

Uma das melhores formas de coletar e-mails dos usuários é através do formulário de comentários do WordPress. Ao invés de usar um plugin, é possível criar uma função customizada para criar uma listagem de e-mails a partir dos dados submetidos pelos usuários. O truque é conseguir puxar a informação dos comentários do banco de dados do WordPress e fornecer, por exemplo, uma caixa de submissão de comentário com subscrição por e-mail.

Essa tática pode ser usada para várias funcionalidades além de coletar e-mails dos usuários, como puxar a informação dos comentários, a data, o URL do comentador, e basicamente toda a informação que esteja na tabela wp_comments do WordPress. Recentemente, os colegas do blog digwp realizaram alguns testes interessantes com essa tabela, e você poderá fazer o mesmo, caso pretenda puxar informações de comentários do banco de dados do seu WordPress.

Você pode puxar e mostrar qualquer tipo de informação dessa tabela em qualquer página ou artigo do seu site. O que você necessita é uma página não-pública (ou outra localização) para mostrar os resultados (“não-pública” especialmente se você quiser puxar e-mails dos usuários). O ideal é você criar uma página privada ou selecionar um template customizado que tenha disponível. Ao carregar a página, aparecem todos os e-mails dos usuários, por exemplo.

Puxar informações do banco de dados

Se você tem uma página com formulário de captura de e-mails e pretende coletar a informação num local específico, para depois contatar esses usuários por e-mail, terá forçosamente que usar algumas funções customizadas do WordPress. Para puxar a informação, teremos que realizar algumas queries no banco de dados do WordPress, selecionar as nossas colunas da tabela wp_comments e depois mostrar essas informações em uma página personalizada/privada.

A respeito das queries SQL, puxar informações da tabela de comentários é muito básico e simples, mas puxar informações de comentários de um artigo em específico, por exemplo, já é bem mais complexo. Para fazê-lo, iremos necessitar da seguinte query:

SELECT DISTINCT comment_author, comment_author_email, comment_author_IP
FROM (
SELECT DISTINCT comment_author, comment_author_email, comment_author_IP
FROM wp_comments WHERE comment_post_ID = 1
) AS WHATEVER

Como pode ver, com essa query podemos puxar qualquer coluna da tabela wp_comments. Na query de exemplo, estamos selecionando as colunas comment_author, comment_author_email, e comment_author_IP.

Se você tiver acesso ao seu banco de dados, você pode usar programas como o phpMyAdmin para executar a query automaticamente. Caso não tenha acesso, teremos que usar uma página privada do WordPress para o efeito. Abra um template de página do WordPress e coloque o seguinte código depois da função the_content():

<?php //grab the data
$comment_info = $wpdb->get_results("SELECT DISTINCT comment_author, comment_author_email, comment_author_IP
FROM (SELECT DISTINCT comment_author, comment_author_email, comment_author_IP
FROM wp_comments
WHERE comment_post_ID = 1
) AS WHATEVER");
// display the results
echo '<ul>';
foreach($comment_info as $info) {
echo '<li><strong>'. $info->comment_author .'</strong> - '. $info->comment_author_email .' - <small>'. $info->comment_author_IP .'</small></li>';
}
echo '</ul>';
?>

Selecione apenas o ID do artigo e voilá! Quando você visita a sua página privada no browser, você irá ver uma listagem similar a esta:

  • Guilherme – gui@hotmail.com – 123.456.789
  • Antônio – max@gmail.com – 987.654.321
  • Salvador Dali – dali@email.com – 456.789.123

Até já!

Redes Sociais

Tags | , , ,

Enviar um Comentário