Cómo eliminar publicaciones/páginas de WordPress permanentemente al instante

3 jun 2014, 16:08:56
Vistas: 17.2K
Votos: 2

Para propósitos de desarrollo necesito constantemente llenar y vaciar una instancia de WordPress con contenido de prueba. Eliminar todo en dos pasos es bastante molesto, así que me pregunto si hay alguna forma de saltarse el paso por la papelera al borrar publicaciones. Por favor ayuda.

1
Comentarios

También hay un plugin disponible para eliminar instantáneamente desde el panel de control que funciona para todos los tipos de entradas. Ver: https://wordpress.org/plugins/force-delete-posts/

Liam Stewart Liam Stewart
19 mar 2018 03:19:02
Todas las respuestas a la pregunta 3
0

Considerando que este sitio es de Desarrollo WordPress, asumo que te gustaría saber cómo eliminar publicaciones de forma programática (forzando la eliminación).

wp_delete_post(257, true); // `true` indica que deseas forzar la eliminación (omitir la papelera)

Más información sobre la función wp_delete_post()

3 jun 2014 16:17:56
5

Puedes establecer un intervalo de tiempo para vaciar automáticamente la papelera:

En tu archivo wp-config.php coloca:

define('EMPTY_TRASH_DAYS', 1 ); //El entero es la cantidad de días

EDITAR: Para desactivar la papelera establece el número de días a cero (http://codex.wordpress.org/Editing_wp-config.php)

¡Espero que te ayude!

3 jun 2014 16:15:29
Comentarios

Para que la eliminación instantánea funcione, esto debe establecerse en 0.

Nicolai Grossherr Nicolai Grossherr
3 jun 2014 16:18:11

@ialocin - Configurar define( 'EMPTY_TRASH_DAYS', 0 ); solo desactiva la eliminación automática. Los elementos permanecen en la papelera indefinidamente si no se eliminan manualmente.

norman.lol norman.lol
3 jun 2014 16:31:07

@koivo "Para desactivar la papelera, establece el número de días en cero. Ten en cuenta que WordPress no pedirá confirmación cuando alguien haga clic en 'Eliminar permanentemente'." Esto es del codex.

ITChristian ITChristian
3 jun 2014 16:39:16

@ialocin - Por favor, pruébalo tú mismo. Solo desactiva la eliminación automática. He leído la documentación.

norman.lol norman.lol
3 jun 2014 16:40:21
2

Usando WP-CLI esto se puede lograr bastante fácil combinando wp post list y wp post delete con la opción --force para omitir la papelera de reciclaje de la siguiente manera:

# Eliminar todas las entradas omitiendo la papelera
$ wp post delete $(wp post list --post_type='post' --format=ids) --force

Otros ejemplos:

# Eliminar entrada omitiendo la papelera
$ wp post delete 123 --force
Éxito: Entrada 123 eliminada.

# Eliminar todas las páginas
$ wp post delete $(wp post list --post_type='page' --format=ids)
Éxito: Entrada 1164 enviada a la papelera.
Éxito: Entrada 1186 enviada a la papelera.

# Eliminar todas las entradas en la papelera
$ wp post delete $(wp post list --post_status=trash --format=ids)
Éxito: Entrada 1268 eliminada.
Éxito: Entrada 1294 eliminada.
12 may 2019 19:40:45
Comentarios

Esto no funciona si tienes WPML

FooBar FooBar
5 nov 2019 14:56:08

@FooBar – ¿Por qué?

norman.lol norman.lol
5 nov 2019 15:02:36