目次
なぜPHPだけでリダイレクトするのか?
WordPressでのリダイレクトには様々な方法がありますが、ここでは特にPHPのみを使用した方法に焦点を当てます。この方法は、以下のような場合に特に便利です:
- WordPressのプラグインや.htaccessファイルを使わずにリダイレクトしたい時。
- 例えば、ある特定のカスタム投稿タイプの詳細ページを使用しなくなり、代わりに一覧ページにリダイレクトしたい場合。
リダイレクトとSEOの関係
リダイレクトは、訪問者を自動的に別のページに転送する機能です。
これは、削除されたページやサイトの再構築、URLの変更時に役立ちます。
適切なリダイレクト設定は、サイトの構造をSEOにとって最適な形で維持し、ユーザーエクスペリエンス(UX)を改善するために重要です。
PHPを使ったWordPressリダイレクトの実装
WordPressのテーマ内でPHPを使用してリダイレクトを実装する手順は以下の通りです。
// 例:カスタム投稿タイプ「news」の詳細ページから一覧ページにリダイレクトさせる
if ( is_singular( 'news' ) ) {
// リダイレクト先のURL
$redirect_url = home_url( '/' ) . 'news';
// 301 リダイレクト(恒久的な移動)
header( 'HTTP/1.1 301 Moved Permanently' );
header( 'Location: ' . esc_url( $redirect_url ) );
exit;
}
ポイント1: header.phpとfooter.phpは不要
リダイレクトを実装する際、get_header();
や get_footer();
などの他のコードは必要ありません。
リダイレクトに必要のないコードは全て消去してください。
リダイレクト処理のコードだけを記述しましょう。
ポイント2: header()
関数の使用
SEOに良い影響を与えるために、header()
関数を使用してHTTPヘッダを通じてリダイレクトさせます。
これにより、ブラウザや検索エンジンに適切にページが移動したことを伝えます。
注意点
リダイレクト先のページは、元のページの内容と関連性が高いことが望ましいです。
SEOの観点から、関連性のあるページへのリダイレクトが効果的です。