WordPress 301リダイレクト(301 Redirect)

Last Updated: 2023 年 07 月 16 日 4のコメント

.htaccessを使用して301リダイレクトを設定する(Apacheサーバー)

301 Redirectは、高速、便利で、検索エンジンに優しい(SEO)でURLをリダイレクトさせる最もきちんとした方法です。 HTAccessはApacheサーバでのみ動作します。 (FTPを使用して.htaccessファイルにコードを追加するようにします。)

単一ページのリダイレクト

Redirect 301 /oldpage.html http://www.yoursite.com/newpage.html
Redirect 301 /oldpage2.html http://www.yoursite.com/folder/

サイト全体のリダイレクト

リンクをそのままにして、新しいメインにリダイレクトさせる方法です(参照).

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !newdomain.com$ [NC]
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [L,R=301]

サブディレクトリをサブドメインにリダイレクトさせる(すべてのURLに対して適用)

たとえばhttp://www.yourdomain.com/subdirectory/{article-url}をhttp://subdomain.yourdomain.com/{article-url}にリダイレクトします。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.yourdomain.com
RewriteRule ^subdirectory/(.*)$ http://subdomain.yourdomain.com/$1 [L,R=301]

サブディレクトリからサブドメインのサブディレクトリに切り替え

例えば、http://www.yourdomain.com/subdirectory/{article-url}をhttp://subdomain.yourdomain.com/subdir/{article-url}にリダイレクトします。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.yourdomain.com
RewriteRule ^subdirectory/(.*)$ http://subdomain.yourdomain.com/subdir/$1 [L,R=301]

サブディレクトリからサブドメインにリダイレクト

たとえば、http://www.yourdomain.com/mydir/をhttp://subdomain.yourdomain.com/にリダイレクトされます。

# 301 redirect for main pages
RedirectMatch 301 ^/mydir/$ http://yourdomain.demo.com/

サブディレクトリをサブドメインの特定のページへディリーコレクション

たとえば、http://www.yourdomain/subdir/内のすべてのページをhttp://subdomain.yourdomain.com/mypage.phpページにリダイレクトさせる場合

# permanent redirect to a particular page
RedirectMatch 301 ^/mydir/$ http://subdom.demo.com/mypage.php

他にも この記事は、さまざまな状況で使用できる301 redirectを紹介しています。

メモ: WordPressで.htaccessファイルにリダイレクトコードを入れても動作しない場合 WordPress 管理者ページ>設定>固有のアドレスに移動して、固有アドレスオプションを「デフォルト」以外のオプション(「文字名」など)に変更した後にテストしてください。 SEOに有利な固有アドレス体系は「文名」または「カテゴリ/文名」と呼ばれます(SEOに有利な WordPressのURL構造 を参照)。

WordPressでプラグインの使用

WordPressは、上記の方法のほか、様々なRedirection関連のプラグインがあります。 例えば、 シングル301リダイレクト, リダイレクションのようなプラグインを使用することができます。

シングル301リダイレクト

より洗練されたRedirectプラグインをご希望の場合 WordPress 究極のリダイレクト Pluginのようなプラグインを使用してみることができます。

モバイル用のリダイレクトプラグイン

モバイル機器を検出して、モバイル用のサイトにリダイレクトさせる場合 RedirectPlusという WordPress モバイル用のリダイレクトプラグインを使用することができます。

RedirectPlus  -  WordPress モバイルリダイレクト Plugin

モバイルデバイスを検出して、モバイルサイトにリダイレクトする WordPress用のプラグインです。 チェックボックスオプションを使用してタブレットデバイスの場合、モバイルサイトにリダイレクトするかどうかを選択することができます。 また、iPhone、アンドロイド、Windowsの携帯電話に別の方法で設定できるオプションも提供しています。 このプラグインは、フルバージョンのWebサイトを表示できるようにする機能も提供します。

他にも Country and Mobile Redirect for WordPress - Professional Editionのようなプラグインもあります。 このプラグインは、SEO、標準301、302リダイレクトを使用する WordPress用URLのリダイレクトのためのプラグインです。 このプラグインを使用して目的のページを404ページに使用することができます。 国、都市、ホームページなどを基準にリダイレクトさせることができ、モバイルサイトにディディレクション、Analytics(分析)、WMLP準拠、 WordPress マルチサイトの互換性、翻訳可能など、さまざまな機能を提供しています。

Country and Mobile Redirect for WordPress -  Professional Edition

様々なプラグインを比較して、状況に適したプラグインを選択するといいようです。

Webホスティングサーバーの設定でリダイレクトを構成する

BluehostGoDaddyは などの一部のWebホスティングサービスでは、Webホスティングサーバーの設定ページでリダイレクトを設定することができるオプションを提供しています。 例えば、 Bluehostは Bluehostにログインした後 domains> redirect メニューからリダイレクトを設定することができます。

Bluehost リダイレクト

上の図のように301リダイレクト(永久)、302リダイレクト(仮)などを含め、詳細な設定が可能です(参照).


4のコメント

コメント

  1. Search boxをなくしたが、/ search / xxxxxxを利用して、
    検索しようとする人のためにredirectionを行うことができますか?

    応答
    • こんにちは?
      この場合は、次のような関数を使用するとなると思われる。

      function fb_change_search_url_rewrite() {
      if ( is_search() && ! empty( $_GET['s'] ) ) {
      wp_redirect( home_url( "/search/" ) . urlencode( get_query_var( 's' ) ) );
      exit();
      }
      }
      add_action( 'template_redirect', 'fb_change_search_url_rewrite' );

      http://wpengineer.com/2258/change-the-search-url-of-wordpress/ ページで詳しく説明していますね。
      ハングルの場合にうまく機能するかは分かりません。

      .htaccessを使用する場合
      RewriteCond %{QUERY_STRING} \?s=([^&]+) [NC]
      RewriteRule ^$ /search/%1/? [NC,R,L]

      応答