回答:
この方法でそれを行うことはできません。
wp_redirect
はヘッダーを送信するための優れた方法でLocation
あり、この関数の2番目の引数はリクエストのステータスであり、カスタム変数ではありません。(404、301、302など)。
いくつかの変数を取得パラメーターとして送信できます。だからあなたはこのようなことをすることができます:
if ( $post_id ) {
$variable_to_send = '1';
wp_redirect( home_url() .'?my_variable='.$variable_to_send );
exit;
}
次に、これらの変数をasとして使用する$_GET['my_variable']
か、カスタムのget変数として登録します。
これでパーティーに遅れますが、それを行う「Wordpressの方法」は次のように使用しますadd_query_arg
。
if ( $post_id ) {
wp_redirect( esc_url( add_query_arg( 'variable_to_send', '1', home_url() ) ) );
exit;
}
これにより、へのリダイレクトが開始されhttp://my.website/?variable_to_send=1
ます。次に、PHPコードでhome_url()
アクセスすることにより、ホームページ(または設定に応じてブログページ)で変数をキャプチャでき$_GET['variable_to_send']
ます。
これをで行う場合はfunctions.php
、フックするinit
か、同様に初期のフックにしてください。そうしないと、「ヘッダーが既に送信されました」エラーが発生します。
うまくいけば、これがこの投稿を見つけた人を助けるでしょう。
wp_safe_redirect()
。