Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Cómo cerrar los comentarios para todas las entradas en WordPress usando wp-cli

Imago voragine.net
• Por

La gestión de los comentarios en un wordpress que ya no está muy activo, que se queda sin moderación, puede llevar un buen rato si no se toman las medidas para prevenir que nuestra base de datos crezca desmesuradamente a causa de los comentarios spam o los que se quedan en espera de ser aprobados, que casi en su totalidad serán spam también.

Hace un tiempo publiqué cómo borrar masivamente comentarios de la base de datos usando wp-cli. Si no se tiene más remedio, es una buena manera de adelgazar la base de datos. Aunque siempre es mejor atajar el problema antes de que se produzca. Para ello se pueden tomar dos medidas: cerrar los comentarios para las nuevas publicaciones y también para todas las que se publicaron en el pasado.

Personalizando la lista de comentarios de WordPress: callback en wp_list_comments

Imago voragine.net
• Por
Antes de la versión 2.7 de WordPress la lista de comentarios se generaba con loop que recorría la array $comments mediante un foreach, de manera que se podía especificar el código a generar para cada comentario. A partir de dicha versión, se introdujo la función wp_list_comments, que genera ella solita la lista de comentarios, con unos valores por omisión que pueden no convenirnos. Para cambiarlos, wp_list_comments dispone del parámetro callback, que permite llamar a una segunda función que defina un código personalizado.

Entendiendo el sistema de comentarios en WordPress: wp_list_comments y comment_form

Imago voragine.net
• Por
Desde la versión 2.7 de WordPress el sistema de comentarios incorporó varias capacidades nuevas como la posibilidad de responder a un comentario concreto y mostrar los comentarios anidados. Además se simplificó su uso, unificando su funcionamiento en unas cuantas funciones que permiten la más absoluta automatización con solo incluirlas en el código, respetando la posibilidad de personalización total. A continuación vamos a construir un sistema de comentarios básico para WordPress, para complejizarlo y personalizarlo después. El código relativo a los comentarios se aloja en el archivo comments.php del theme. Básicamente consta de dos partes: la lista de comentarios y el formulario para añadir un comentario. La primera parte se controla con la función wp_list_comments y la segunda con la función comment_form.

Cómo evitar trackbacks propios en WordPress sin tocar el código ni tirar de plugin

Imago voragine.net
[actualizado el ] • Por Enlace permanente

Como complemento al código que publicamos ayer para evitar que aparezcan los trackbacks propios o internos en una entrada de WordPress, Informático de Guardia sugiere otra que no requiere tocar código ni instalar plugin alguno: enlazar mediante rutas relativas, así de fácil.

Cómo segregar los trackbacks internos para que no aparezcan en la lista de comentarios de una entrada en WordPress

Imago voragine.net
[actualizado el ] • Por
Si lo que necesitas es detectar qué trackbacks se han producido por enlazar de manera interna contenido de tu propio sitio web, y evitar que aparezcan en el listado de comentarios, lo único que tienes que hacer es introducir una sentencia condicional en el loop de comentarios que segregue los trackbacks y con la orden strpos(); detectar aquellos que contengan la URL de tu sitio web.

Cómo saber el número de comentarios y de trackbacks por separado que tiene una entrada en WordPress

Imago voragine.net
• Por
La función comments_number() de WordPress devuelve el número total de comentarios humanos y trackbacks asociados a una entrada, pero no los valores por separado. Tampoco existe otra función que nos permita saber este dato. La única solución que he encontrado consiste en crear una función que haga una consulta directa a base de datos. El enlace anterior conduce a una función que devuelve el número total de trackbacks a todas las entradas de un blog, y me ha servido de base para hacer otras dos, una que devuelve el número de comentarios humanos a una entrada.