header関数のLocationを使ってURLを指定することで、指定したURLへ遷移することができます。header関数はhtmlを出力する前に実行する必要があります。
header('Location: リダイレクト先のURL');
WordPressで同一サイト内の別ページへリダイレクトする場合は以下のように記述します。
<?php
define('HOME_URL', home_url()); //ホームURL
header('Location: '.HOME_URL.'/document/download/');
exit();
?>
リダイレクト後はexit();で処理を終了させます。exit();するとそれ以上ページ内のコードは実行されません。
なおheader関数のLocationによる転送は、HTTPステータスコード302(一時的なリダイレクト)になります。HTTPステータスコード301(永続的なリダイレクト)を使用する場合は以下のように記述します。
header('Location: リダイレクト先のURL', true, 301);
注意点として、header関数のLocationの前に何かを表示する記述があると、エラーが発生してリダイレクト処理が実行できません。
<?php
echo 'test';
header('Location: https://www.google.com');
exit();
?>
