WordPress - Aggiornare tutti i post esistenti in una volta

3 lug 2014, 07:52:02
Visualizzazioni: 1.3K
Voti: 0

Esiste un modo per scorrere tutti i post pubblicati esistenti su un sito WordPress, replicando la pressione del pulsante "aggiorna" su ogni post singolarmente? Sarebbe un'operazione una tantum. Ho un sito con migliaia di post esistenti e non c'è modo che possa aggiornarli tutti manualmente.

Ho aggiunto un plugin che mostra alcune nuove informazioni su ogni post, ma per farlo funzionare sui post esistenti, devi "aggiornare" ogni singolo post individualmente.

Grazie

3
Commenti

Cosa intendi esattamente con il voler modificare qualcosa in tutti i post?

Sudeep Acharya Sudeep Acharya
3 lug 2014 08:13:45

Sembra che dovresti filtrare il contenuto del post usando il filtro post_content, piuttosto che aggiornare effettivamente il contenuto del post. Se installassi un plugin che modificasse tutti i miei post non sarei felice. Inoltre, ciclare attraverso ogni post del sito è un processo potenzialmente lento e potrebbe causare timeout su siti grandi o su hosting condivisi.

John Blackbourn John Blackbourn
3 lug 2014 12:19:57

Puoi anche aggiornare tutti i post tramite l'area Admin se il tuo server ha la potenza per elencarli tutti. Elenca tutti i post, cambia le impostazioni di visualizzazione in modo da mostrare tutti i tuoi post. Ora seleziona tutto usando le checkbox a sinistra e aggiorna tutti i post.

bueltge bueltge
16 gen 2019 13:47:06
Tutte le risposte alla domanda 1
0

Non sono sicuro che funzionerà, ma potresti provare a eseguire wp_update_post() su tutti i post interessati. Questo attiverà l'hook save_post.

Secondo il Codex:

A differenza di wp_insert_post(), è necessario passare solo l'ID del post da aggiornare e gli elementi da modificare.

Potresti provare a ciclare un array di ID post e eseguire la funzione su di essi. Puoi recuperare gli ID post usando WP_Query.

foreach( $posts_id as $post_id ){
    wp_update_post( $post_id );
}
3 lug 2014 08:18:59