Ho usato questo sito molto per risolvere i miei problemi, ma questa volta non sono riuscito a trovare e rispondere al mio problema.
Ottengo un ciclo infinito quando utilizzo wp_update_post
all'interno di una funzione chiamata save_post
. So che questo è un problema comune, ma non riesco a capire come evitarlo.
Voglio salvare l'ordine dei miei post (che è di tipo post "sezione"). Quindi ho creato una meta box personalizzata che contiene alcuni elementi html ordinabili. In ogni elemento è presente un tag di input nascosto con name = 'sectionorder []'. Quindi, quando faccio clic sul pulsante standard 'Aggiorna' di WordPress, un array contenente tutti gli ID dei post (in ordine) vengono inviati tramite POST. Quindi ecco il codice in cui recupero l'array e vuole salvare l'ordine:
// Update section sort order
$sectionorder = $_POST['sectionorder'];
if (isset($sectionorder)) { // Avoid error if there is no sections added yet
foreach( $sectionorder as $no => $sectionID ) {
$post_update = array();
$post_update['ID'] = $sectionID;
$post_update['menu_order'] = $no;
wp_update_post( $post_update );
}
}
Ma il problema è che inizia un ciclo infinito. Come posso evitarlo? Forse posso farlo in un modo completamente diverso?
Apprezzo il tuo aiuto!