Sim, é uma sequela do Como criar um gráfico de número de posts.
Já uso há meses esse método para visualizar o número de posts posts, neste blog e noutros. Mas, acreditem ou não, só ontem é que me indaguei se seria possível medir os comentários também. Isto é que é estar com atenção…
A resposta é sim, e foi bastante trivial: foi só fazer um “search & replace” de “posts” para “comments” em todos os scripts, e também nos nomes dos ficheiros. Mas… 4700 comentários?!? Isso dá quase 5 vezes o número de posts, e eu sei que não tenho assim tantos comentários nos blogs…
A explicação é que os comentários marcados como spam também contam. Assim, foi preciso especificar que só queria contar os comentários aprovados.
Como adoramos ver exemplos antes de experimentar as coisas :), aqui está o meu caso.
E agora, os scripts:
1- ficheiro /etc/mrtg-blogcomments.cfg
WorkDir: /var/www/htdocs/blogcomments
Options[blogcomments]: nopercent,noi,growright,nobanner,nolegend,noinfo,gauge,integer
Refresh: 6000
Target[blogcomments]: `/root/bin/blogcomments.php`
MaxBytes[blogcomments]: 5000
Title[blogcomments]: Blog Comments
PageTop[blogcomments]: <h1>Blog Comments</h1>
XSize[blogcomments]: 500
YSize[blogcomments]: 250
XScale[blogcomments]: 1.4
YScale[blogcomments]: 1.4
YLegend[blogcomments]: comments
ShortLegend[blogcomments]: comments
Legend1[blogcomments]: Blog Comments
Legend3[blogcomments]: Max Comments
LegendI[blogcomments]: Blog Comments:
LegendO[blogcomments]: Blog Comments:
2- ficheiro /root/bin/blogcomments.php
#!/usr/local/bin/php
<?php
$comments[1] = rtrim (`mysql -s -u blog1user -pblog1pw blog1 -e "select count(*) from wp_comments where comment_approved='1';" `);
$comments[2] = rtrim (`mysql -s -u blog2user -pblog2pw blog2 -e "select count(*) from wp_comments where comment_approved='1';" `);
$comments[3] = rtrim (`mysql -s -u blog3user -pblog3pw blog3 -e "select count(*) from wp_comments where comment_approved='1';" `);
# ...
$total = array_sum ($comments);
print "$total\n";
print "$total\n";
print `uptime`;
print `uname -n`;
?>
NOTA 1: o script está em /root/bin , porque tem as passwords das bases de dados.
NOTA 2: obviamente, é necessário alterar blog#user, blog#pw e blog#.
NOTA 3: se houver mais blogs a contar, é só acrescentar as queries em “# …”, no script.
3- no crontab de root:
*/5 * * * * /usr/local/bin/mrtg /etc/mrtg-blogcomments.cfg
Divirtam-se.






0 Responses to “Como criar um gráfico do número de comentários em blogs”