Entradas

La necesidad de borrar todos los posts dentro de una categoría en WordPress puede ser una tarea sencilla siempre y cuando el numero de posts no sea muy alto. Hace algunos días me vi en la necesidad de tener que borrar más de 6000 entradas de una sola categoría en una instalación de WordPress y por supuesto borrarlas desde el editor de 20 en 20, no es una opción adecuada, ni algo recomendable en el que invertir tu tiempo.

La forma adecuada de hacer esto es realizando una consulta directa en nuestra base de datos para borrar todos los posts y para ello tenemos que entrar a phpMyAdmin para gestionar la base de datos de nuestra instalación de WordPress.

Vamos a ver paso a paso como borrar todas las entradas de una categoría en WordPress desde la base de datos.

Primero tenemos que entrar a phpMyAdmin y tienes que entrar desde el panel de administración de tu Hosting. El siguiente ejemplo lo hago utilizando Plesk, aunque en cPanel los pasos son prácticamente iguales.

Primero entra a la sección de bases de datos.

A continuación verás un listado de base de datos en caso de que tengas varias y necesitas darle click a la que estás utilizando con tu instalación de WordPress.

Después de darle click a la base de datos, te salen las opciones y herramientas disponibles para ella. Para entrar a phpMyAdmin dale click a Webadmin o phpMyAdmin si te aparece así.

Cuando le das click a Webadmin se abre una ventana nueva con phpMyAdmin y bastante información visual, no te preocupes, en este caso solo tienes que hacerle caso a SQL como se indica en la siguiente imagen.

phpMyAdmin

Dale click a SQL para sue se muestre el campo de texto en donde puedes ejecutar comandos en la base de datos.

En ese campo de texto tienes que ejecutar el siguiente comando que puedes copiar y pegar.

delete a,b,c,d
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON ( a.ID = b.object_id )
LEFT JOIN wp_postmeta c ON ( a.ID = c.post_id )
LEFT JOIN wp_term_taxonomy d ON ( d.term_taxonomy_id = b.term_taxonomy_id )
LEFT JOIN wp_terms e ON ( e.term_id = d.term_id )
WHERE e.term_id =36

Importante.
De este código solo tines que cambiar el numero 36 de la última linea por número ID de tu categoría.

Ya que tienes el código en esa ventana, solo tienes que darle ejecutar como se ve en la siguiente imagen.

¿Como saber el número ID de una categoría en WordPress?

La respuesta es sencilla. Entra a la administración de WordPress, en "Entradas" selecciona "Categorías". Ahí veras una lista con todas las categorías que tienes creadas en WordPress.

Tienes dos maneras de ver el ID de cada categoría.

1- Con solo poner el mouse encima del nombre de una de las categorías, abajo en la barra de estado en la ventana de tu navegador, verás la dirección URL para ver esa categoría y ahí viene el ID.

2- Dale click a editar categoría y verás arriba en la dirección URL la ID que tiene la categoría.

Con eso ya tienes el ID de la categoría a la que quieres borrarle todos los posts utilizando el código antes mencionado.

¿Alguna vez tuviste la necesidad de borrar todos los posts de una categoría en WordPress?

Espero que esta solución te ayude.