WordPressでは、ページへのアクセスをリダイレクトする場合のために、wp_redirect
関数とwp_safe_redirect
関数が用意されています。
サイト内のURLへリダイレクトする
同じWordPressサイト内のURLへリダイレクトする場合には、wp_safe_redirect
関数を使用します。
この関数は、まずリダイレクト先のURLが有効かどうかを確認してからリダイレクトするので、より安全なリダイレクトになります。
1 2 3 4 |
<?php wp_safe_redirect( home_url() ); exit; ?> |
デフォルトでは302リダイレクト(一時的なリダイレクト)になります。
永久的なリダイレクトの場合には、第2引数を301
にします。
1 2 3 4 |
<?php wp_safe_redirect( home_url(), 301 ); exit; ?> |
また、フォームからPOSTした後にリダイレクトする場合などは、第2引数を303
にします。
1 2 3 4 |
<?php wp_safe_redirect( home_url(), 303 ); exit; ?> |
別サイトのURLへリダイレクトする
別サイトのURLへリダイレクトする場合には、どんなURLにもリダイレクトできるwp_redirect
関数を使用します。
1 2 3 4 |
<?php wp_redirect( 'http://other-site.com/' ); exit; ?> |
別サイトへのリダイレクトはセキュリティ上のリスクを伴いますので、リダイレクト先が信頼できるページか、またリダイレクトに必然性があるかなどに注意を払って使用してください。