Como criar uma página WordPress que mostra estatísticas de comentários?
WordPress é baseado em PHP e MySQL. Por isso, é muito flexível e poderoso. Este artigo irá guiá-lo como criar uma página que mostre as estatísticas de comentários do seu blog. Por exemplo, uma tabela com duas colunas, o autor e o número de seus comentários.
Para habilitar o código PHP, você precisará instalar um plugin que permita incluir código PHP em seus posts/páginas. Minha recomendação é procurar [Simple Include HTML e PHP] no seu painel de controle do wordpress.
Então, você precisa criar uma página que tenha pelo menos o seguinte (marcado em vermelho).
Plugin do WordPress para mostrar estatísticas de comentários
Em seguida, vá para sua pasta do tema e crie um arquivo chamado cmt.php e defina o modo de acesso ao arquivo para 644 (ou pelo menos legível).
O código PHP para preencher o arquivo é:
<?php
//<a class="vglnk" target="_blank" href="https://helloacm.com" rel="nofollow"><span>https</span><span>://</span><span>helloacm</span><span>.</span><span>com</span></a>
global $wpdb;
$query = "
select
`comment_author`,
`comment_author_url`,
count(1) as `cnt`
from
`wp_comments`
where
`comment_approved` = 1
group by
`comment_author`
order by
`cnt` desc
limit 10
";
$result = $wpdb->get_results($query);
if ($result) {
echo "<table width='100%' style='border:0'>";
echo "<tr><b><td>Author</td><td>The Number of Comments</td></b></tr>";
foreach ($result as $author) {
echo "<tr>";
$a = esc_sql($author->comment_author);
$query = "
select
`comment_post_id`,
`comment_id`
from
`wp_comments`
where
`comment_approved` = 1 and
`comment_author` = '$a'
order by
`comment_date` desc
limit 1
";
$latest = $wpdb->get_row($query);
echo "<td><a href='$author->comment_author_url' target='_blank' title='$author->comment_author'>".$author->comment_author."</a></td>";
echo "<td><a title='$author->comment_author' href='/archives/$latest->comment_post_id/#comment-$latest->comment_id'>".$author->cnt."</a></td>";
echo "</tr>";
}
echo "</table>";
}
?>
Clicar em [Autor] navegará até a URL fornecida (em uma nova janela) e clicar em [O número de comentários] levará ao comentário mais recente. O formato do URL pode precisar ser ajustado se não for o padrão [/archives/post_id].
A página de exemplo pode ser vista aqui: https://justyy.com/commentator (em chinês).
A função PHP mysql_real_escape_string() é depreciada, mas você ainda pode usar esc_sql ou $wpdb->prepare() para escapar de strings (contendo aspas simples ou duplas) para SQL/banco de dados.
