Saltar al contenido →

Contador de comentarios en WordPress

Ejecutando este script debería funcionar:


$mysql_server = "localhost";
$mysql_user = "";
$mysql_pass = "";
$mysql_database = "";
$mysql_link = false; // Conexión de la base de datos. Que también hace falta ;). $mysql_link = mysql_connect($mysql_server, $mysql_user, $mysql_pass) or die("hay un error en $PHP_SELF y el error está en: " .mysql_error());
mysql_select_db($mysql_database, $mysql_link)or die("hay un error en $PHP_SELF y el error está en: " .mysql_error()); $query_entradas = "SELECT * FROM wp_posts";
$entradas = mysql_query($query_entradas, $mysql_link); //Hacemos un recorrido de todas las entradas
$entradas_row = mysql_fetch_row($entradas);
while ($entradas != false) // Y hasta que se acaben, miramos cuántos comentarios tiene
{
$id = $entradas[0]; $query_comentarios = "SELECT COUNT(*) FROM 'wp_comments' WHERE 'comment_post_ID' = $id";
$comentarios = mysql_query($query_comentarios, $mysql_link); // Cuántos comentarios hay $query_update = `UPDATE 'wp_posts' set 'comment_count' = $comentarios WHERE 'ID' = $id`;
$up_query = mysql_query($update_query, $mysql_link); // Actualizamos $entradas_row = mysql_fetch_row($entradas); // Seguimos recorriendo el bucle }?>

Pero mi servidor está tonto hoy y dice que no quiere ejecutar php, que le viene mal. Luego sigo intentándolo.

_____

Actualización: estoy torpe. Nunca recuerdo que las consultas, aunque sean de un solo campo, devuelven un array y hay que ‘capturarlo’ para que se muestre.

El código:

$query_entradas = “SELECT * FROM wp_posts”;
$entradas = k_query($query_entradas); //Hacemos un recorrido de todas las entradas
$entradas_row=mysql_fetch_row($entradas);
while ($entradas_row != false)? // Y hasta que se acaben, miramos cuántos comentarios tiene
{
$id = $entradas_row[0];
$query_comentarios = “SELECT COUNT(*) FROM wp_comments WHERE comment_post_ID = $id”;
$comentarios = k_query($query_comentarios); // Cuántos comentarios hay
$comentarios_row=mysql_fetch_row($comentarios);
$query_update = “UPDATE wp_posts SET comment_count = $comentarios_row[0] WHERE ID = $id”;
k_query($query_update); // Actualizamos
$entradas_row=mysql_fetch_row($entradas); // Seguimos recorriendo el bucle
}
(k_query es una función que automatiza las consultas).

Publicado en programación WordPress

5 comentarios

  1. Veo que la llegada del verano nos hace migrar hacia tierras más cálidas.
    ??nimo…
    Estoy segurísima de que nos sorprenderás.

  2. Yo necesito un contador de comentarios pero no que se conecte a la base de datos, el libro de comentarios está hecho con un php y un txt donde se van guardando los comentarios…¿sabes como hacerlo?..favor escribeme

Deja un comentario

A %d blogueros les gusta esto: