Wp_redirect e invio di variabili
Come inviare alcune variabili con wp_redirect() dal file functions.php nella cartella del mio tema?
if ( $post_id ) {
$variable_to_send = '1';
wp_redirect( home_url() . '?status=' . $variable_to_send );
exit;
}
E nella homepage catturerò la variabile in una condizione if-else per mostrare o meno una conferma a seconda se $variable_to_send
= '1' o no.
Come farlo in WordPress?

Arrivo in ritardo alla festa con questo, ma il "modo Wordpress" per farlo sarebbe utilizzare add_query_arg
in questo modo:
if ( $post_id ) {
wp_redirect( esc_url( add_query_arg( 'variable_to_send', '1', home_url() ) ) );
exit;
}
Questo inizierà un reindirizzamento a http://my.website/?variable_to_send=1
. Sarai quindi in grado di catturare la variabile nella homepage (o nella pagina del blog, a seconda di come è configurato il tuo home_url()
) accedendo a $_GET['variable_to_send']
nel tuo codice PHP.
Se intendi fare questo in functions.php
, assicurati di agganciarti a init
o a un hook altrettanto precoce, altrimenti otterrai un errore "Headers already sent".
Spero che questo aiuti qualcuno che si imbatte in questo post.

Penso che tu non possa farlo in questo modo.
wp_redirect
è un modo elegante per inviare l'header Location
e il secondo argomento di questa funzione è lo stato della richiesta, non una variabile personalizzata. (404, 301, 302, e così via).
Puoi inviare alcune variabili come parametri get. Quindi puoi fare qualcosa del genere:
if ( $post_id ) {
$variable_to_send = '1';
wp_redirect( home_url() .'?my_variable='.$variable_to_send );
exit;
}
Poi puoi usare queste variabili come $_GET['my_variable']
o registrarla come variabile get personalizzata.
