



WithCodeMedia-1-pc
WithCodeMedia-2-pc
WithCodeMedia-3-pc
WithCodeMedia-4-pc




WithCodeMedia-1-sp
WithCodeMedia-2-sp
WithCodeMedia-3-sp
WithCodeMedia-4-sp









WordPressのリダイレクトは、あるURLへのアクセスを別のURLへ自動転送する仕組みで、URL変更・SSL化・ドメイン移転などで必要になります。URLを恒久的に変更する場合はSEO評価を新URLへ引き継ぐ301リダイレクトを、一時的な転送やキャンペーンには元URLに評価を残す302リダイレクトを使い分けます。設定方法は主に、.htaccessの編集、functions.phpへのコード追記、Redirection等のプラグイン利用の3つがあり、スキルレベルや用途に応じて選べます。
生徒ペン博士!WordPressでリダイレクトを設定したいのですが、方法がたくさんあって何から手をつければいいか分からなくて困っています…
ペン博士リダイレクトはSEOにも直結する重要な設定じゃ!仕組みを理解すれば怖くないぞ。コード実装からプラグインまで、状況に応じた最適な方法を一緒に学んでいこう!
生徒ありがとうございます!SEOにも関係あるんですね。しっかり学びたいです!
「記事のURLを変更したら検索順位が急落した」「古いURLにアクセスすると404エラーが出てしまう」「サイトをHTTPSに移行したいけどリダイレクトの設定が不安…」——こうした悩みを抱えているWordPressユーザーは少なくありません。
リダイレクト設定はSEO・ユーザー体験・サイト移行のすべてに影響する重要な作業です。正しく設定すれば検索エンジンの評価を維持したまま安全にURLを変更できますが、誤ると大切な被リンクやSEO評価を一気に失うリスクがあります。
本記事では、リダイレクトの基本的な仕組みから「301リダイレクト」「302リダイレクト」の違い、.htaccessやfunctions.phpを使ったコード実装、初心者でも扱いやすいWordPressプラグインによる設定方法まで、ステップごとに丁寧に解説します。読み終えるころには、自分のサイトに最適なリダイレクトを自信を持って設定できるようになるでしょう。
リダイレクト(Redirect)とは、あるURLにアクセスしたユーザーやbot(検索エンジンのクローラー)を、別のURLへ自動的に転送する仕組みです。
たとえば以下のような場面で必要になります。
リダイレクトを設定しないままURLを変更すると、古いURLにアクセスしたユーザーは「404 Not Found(ページが見つかりません)」エラーに直面します。これはユーザー体験を著しく損なうだけでなく、Googleがそのページに付与していたSEO評価(被リンクの資産など)も消失してしまう原因になります。
リダイレクトには種類があり、用途によって使い分けることが重要です。特によく使われる「301」と「302」の違いを押さえておきましょう。
301リダイレクトは「このURLは恒久的に移転しました」という意味を持ちます。検索エンジンに対して旧URLのSEO評価(PageRankなど)を新URLへ引き継ぐよう伝えることができるため、URLを永続的に変更するケースでは必ず301を使用するのが基本です。
302リダイレクトは「このURLは一時的に別の場所へ移動しています」という意味を持ちます。SEO評価は元のURLに残ったままになるため、一時的なキャンペーンページや工事中ページへの誘導などに使います。誤って302を使い続けると、SEO評価が新URLに移転されないまま時間が経過してしまうので注意が必要です。
【まとめ】301 vs 302の使い分け
URLを恒久的に変更 → 301リダイレクト(SEO評価が新URLへ引き継がれる)
一時的な転送・キャンペーン誘導 → 302リダイレクト(SEO評価は元URLに留まる)
WordPressでリダイレクトを設定する方法は主に3つあります。それぞれメリット・デメリットがあるため、自分のスキルレベルや用途に合わせて選びましょう。
.htaccess(ドットエイチティーアクセス)はApacheサーバーの設定ファイルです。WordPressがインストールされているルートディレクトリに存在し、ここにリダイレクトのルールを記述することで設定できます。
.htaccessはFTPクライアント(FileZillaなど)またはレンタルサーバーのファイルマネージャーからアクセスできます。WordPressのルートディレクトリ(通常は「public_html」直下)に配置されています。
編集前には必ずバックアップを取ること!
.htaccessの記述ミスはサイト全体に影響します。編集前に元のファイルをダウンロードして保存しておきましょう。
特定のURLを別のURLへ301リダイレクトする場合は以下のように記述します。
# 特定ページの301リダイレクト
Redirect 301 /old-page/ https://example.com/new-page/上記の例では、「/old-page/」へのアクセスをすべて「https://example.com/new-page/」へ転送します。
SSL化(HTTPS化)に際して、すべてのHTTPアクセスをHTTPSへリダイレクトするコードは以下の通りです。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]「www.example.com」と「example.com」を統一する場合のコードです。www無しに統一する例を示します。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]「example.com」の部分はご自身のドメインに置き換えてください。
旧ドメインから新ドメインへサイトごと移転する際は以下のように記述します。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old-domain\.com [NC]
RewriteRule ^(.*)$ https://new-domain.com/$1 [L,R=301]WordPressのテーマファイル「functions.php」にPHPコードを追記してリダイレクトを設定する方法もあります。特定の条件(ログイン状態、ユーザーロールなど)に応じた動的なリダイレクトを実現したい場合に有効です。
function my_custom_redirect() {
if ( is_page( 'old-page' ) ) {
wp_redirect( home_url( '/new-page/' ), 301 );
exit;
}
}
add_action( 'template_redirect', 'my_custom_redirect' );上記のコードでは、スラッグが「old-page」のページへアクセスがあった場合に「/new-page/」へ301リダイレクトします。wp_redirect()の第2引数でステータスコードを指定できます(301または302)。
会員限定ページなど、ログイン必須のページへ未ログインのユーザーがアクセスした場合に、ログインページへ誘導するコード例です。
function redirect_non_logged_in_users() {
if ( ! is_user_logged_in() && is_page( 'members-only' ) ) {
wp_redirect( wp_login_url( get_permalink() ) );
exit;
}
}
add_action( 'template_redirect', 'redirect_non_logged_in_users' );wp_login_url( get_permalink() )のように現在のURLを渡すと、ログイン後に元のページへ自動的に戻せます。exit;を必ず付け、リダイレクト後の処理を止める点に注意してください。
コードを書きたくない場合は、リダイレクト管理プラグインが最も手軽で安全です。定番は「Redirection」で、301/302を選んで転送元・転送先URLを入力するだけで設定が完了します。
WordPressのリダイレクトは、正しく設定すればSEO評価を維持したまま安全にURLを変更できます。
A. 301は「恒久的な転送」で、旧URLのSEO評価(PageRankなど)を新URLへ引き継ぎます。パーマリンクの恒久変更やHTTPS移行、ドメイン移転などに使います。302は「一時的な転送」で、SEO評価は元のURLに残るため、一時的なキャンペーンページや工事中ページへの誘導に使います。恒久的な変更で誤って302を使い続けるとSEO評価が移転されないので注意が必要です。
A. 主に3つあります。Apache環境向けに.htaccessファイルを編集する方法、テーマのfunctions.phpにPHPコードを追記する方法、Redirection等のプラグインを使う方法です。それぞれメリット・デメリットがあるため、自分のスキルレベルや用途に合わせて選びます。ログイン状態やユーザーロールに応じた動的な制御をしたい場合はfunctions.phpが有効です。
A. .htaccessはApacheサーバーの設定ファイルで、WordPressのルートディレクトリ(通常はpublic_html直下)にあります。FTPクライアントやサーバーのファイルマネージャーから編集できますが、記述ミスはサイト全体に影響するため、編集前に必ず元のファイルをダウンロードしてバックアップを取っておくことが重要です。
A. 古いURLにアクセスしたユーザーは「404 Not Found」エラーに直面します。これはユーザー体験を著しく損なうだけでなく、Googleがそのページに付与していたSEO評価(被リンクの資産など)も消失してしまう原因になります。正しく設定すれば検索エンジンの評価を維持したまま安全にURLを変更できます。

副業・フリーランスが主流になっている今こそ、自らのスキルで稼げる人材を目指してみませんか?
未経験でも心配することはありません。初級コースを受講される方の大多数はプログラミング未経験です。まずは無料カウンセリングで、悩みや不安をお聞かせください!
公式サイト より
今すぐ
無料カウンセリング
を予約!