Come eliminare istantaneamente post/pagine in modo permanente?

3 giu 2014, 16:08:56
Visualizzazioni: 17.2K
Voti: 2

A scopo di sviluppo ho bisogno di riempire e svuotare continuamente un'istanza WordPress con contenuti fittizi. Eliminare tutto in due passaggi è piuttosto fastidioso, quindi mi chiedo se ci sia un modo per evitare il passaggio nel cestino quando si cancellano i post. Per favore aiutatemi.

1
Commenti

È disponibile anche un plugin per eliminare istantaneamente dalla dashboard che funziona per tutti i tipi di post. Vedi: https://wordpress.org/plugins/force-delete-posts/

Liam Stewart Liam Stewart
19 mar 2018 03:19:02
Tutte le risposte alla domanda 3
0

Considerando che questo sito riguarda lo sviluppo WordPress, presumo che tu voglia sapere come eliminare (forzatamente) i post a livello programmatico.

wp_delete_post(257, true); // `true` indica che vuoi eliminare forzatamente (saltando il cestino)

Maggiori informazioni sulla funzione wp_delete_post()

3 giu 2014 16:17:56
5

Puoi impostare un intervallo di tempo per lo svuotamento automatico del cestino:

Nel tuo file wp-config.php inserisci:

define('EMPTY_TRASH_DAYS', 1 ); //L'intero rappresenta il numero di giorni

MODIFICA: Per disabilitare il cestino imposta il numero di giorni a zero (http://codex.wordpress.org/Editing_wp-config.php)

Spero sia utile!

3 giu 2014 16:15:29
Commenti

Per far funzionare l'eliminazione immediata questo deve essere impostato su 0.

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

@ialocin - Impostare define( 'EMPTY_TRASH_DAYS', 0 ); disattiva solo l'eliminazione automatica. Gli elementi rimangono poi nel cestino per sempre se non vengono eliminati manualmente.

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

@koivo "Per disabilitare il cestino imposta il numero di giorni a zero. Nota che WordPress non chiederà conferma quando qualcuno clicca su "Elimina Definitivamente"." È preso dal codex.

ITChristian ITChristian
3 giu 2014 16:39:16

@ialocin - Per favore provalo tu stesso. Disattiva solo l'eliminazione automatica. Ho letto la documentazione.

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

Utilizzando WP-CLI questo può essere ottenuto abbastanza facilmente combinando wp post list e wp post delete con l'opzione --force per saltare il cestino in questo modo:

# Elimina tutti gli articoli saltando il cestino
$ wp post delete $(wp post list --post_type='post' --format=ids) --force

Altri esempi:

# Elimina un articolo saltando il cestino
$ wp post delete 123 --force
Success: Articolo 123 eliminato.

# Elimina tutte le pagine
$ wp post delete $(wp post list --post_type='page' --format=ids)
Success: Pagina 1164 spostata nel cestino.
Success: Pagina 1186 spostata nel cestino.

# Elimina tutti gli articoli nel cestino
$ wp post delete $(wp post list --post_status=trash --format=ids)
Success: Articolo 1268 eliminato.
Success: Articolo 1294 eliminato.
12 mag 2019 19:40:45
Commenti

Questo non funziona se hai WPML

FooBar FooBar
5 nov 2019 14:56:08

@FooBar – Perché?

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