WordPressのサイト移行で、旧から新サイトへ301転送設定をまとめて行えるRedirection
WordPressで複数のサイト運営を行っていましたが、その一部を統合することにしました。
サイト移行をした場合、今まで書いた記事も新しいサイトに移行したい場合があります。
単純に新しいサイトに同じ記事を書いて、古い記事を消す方法もありますが、旧サイトにそこそこアクセスがあり、ブックマークもいただいているような記事があると、そのリンクが切れてしまうのはなるべく避けたいところです。
かといって、2つの記事を残したままにしておくと、Googleにコピーコンテンツとみなされ、SEO的にマイナスの評価を受けてしまう可能性もあります。
そのため、
・2つの同じ記事あるけど、メインは新サイトの記事の方で、旧サイトの記事の方は以前のサイトのユーザのために残しているんですよー。
ということをGoogleにも伝えてあげる必要があります。
そのような場合に利用できるのが、「301 リダイレクト」という方法です。
リダイレクトとは「転送」のことで、旧サイトのその記事にアクセスがあった場合、そのまま新サイトに「転送」し、サイトの記事の方を表示してあげます。
また、「301 リダイレクト」すると、旧サイトはGoogleのインデックス対象とならず、転送先の新サイトの方がインデックス対象となるので、転送設定後しばらく経つと、新サイトの方が検索結果に表示されるようになりますので、新しく検索してサイトに到達してくれる人には、新サイトでアピールできることになります。
こうすることで、旧サイトにブックマークしているユーザは活かしつつ、新サイトに誘導していくことが可能になります。
現実の世界でも、引っ越しで住所が変更になったとき、郵便局に届け出をしておけば、旧住所にきた郵便物を新しい住所に転送してくれますよね。
しばらくして、新住所が浸透してきたら、新しい住所に荷物を送ってくる人はほとんどいなくなります。それと同じようなことをインターネットの世界で行うことだと考えるとわかりやすいです。
実際にこの設定を行うのは旧サイト側で、「このURLにアクセスがあったら、自動的にこの新しいサイトのこのURLを表示してあげる」という定義を行っておきます。
定義する場所は、どの方法をとるかによって変わりますが、Wordpressを使っているのであれば、「Redirection」というプラグインを利用すると便利です。
このプラグインを使うと、旧から新の1対1のURLのマッピングを定義できるだけでなく、あるディレクトリから下のURLを全部新サイトの対応する記事に転送したりなど、自由度の高い設定が行えます。
旧サイトの記事数が多くて、ひとつひとつの設定は手間がかかるといった場合も便利なプラグインですね。
では、さっそく使い方をみてみましょう。
ここからダウンロードして、プラグインをインストールして有効化します。
その後、管理コンソールの「ツール」⇒「リディレクション」をクリックすると、以下のような画面となります。
1対1での転送設定
あるURLから新しいURLに1対1でのマッピングを行うのは簡単です。
下記のように、ソースURLに旧サイトの記事のURL、ターゲットURLに、新サイトの記事のURLを入力し、一致条件は「URLのみ」、操作は「URLへ転送」を選んで「新しい転送ルールを追加」すればOKです。
正規表現を使うと、もっと自由度のある複数URLの設定ができますが、それは後程使いますので、今回はチェックなしで結構です。
設定を保存できたら、実際にブラウザで旧記事のURLを入力してみます。
すると、新サイトが表示されるはずです。
ディレクトリtoディレクトリの転送設定(各記事to各記事)
それでは応用編として、あるディレクトリ以下の記事を全部新サイトのあるディレクトリ以下の各記事に転送してみる設定を1つの定義で行ってみます。
今回は「正規表現」を使用します。
この表現を使うと、URLのマッチング条件の自由度が上がります。
少し、上記の設定を解説します。
まず、ソースURLには「旧サイト/wordpress/(d*)/(d*)/(.*)」と指定されていますね。
「d」は任意の半角数字を表し、「()」でグループ化されているので、「数字の繰り返し」にマッチします。
「.」は(改行文字を除く)任意の1文字にマッチします。
つまり、
「旧サイト/wordpress/2015/02/saple-kiji」のようなURLだった場合に、転送されることになりますね。
それをどのURLに転送するかは、「新サイト/wordpress/$1/$2/$3」と指定されています。
「$数字」はソースURLでマッチした文字列に順番に対応しています。
つまり、最初の「(d*) 」にマッチする「2015」が「$1」に、次の「(d*)」にマッチする「02」が「$2」に、「(.*) 」にマッチする「saple-kiji」が「$3」に対応することになります。
このため、「旧サイト/wordpress/2015/02/saple-kiji」が「新サイト/wordpress/2015/02/saple-kiji」に転送されます。
このように指定することで、旧サイトのwordpressディレクトリ配下の「年/月/記事名」の記事を1つの指定で新サイトの同じ「年/月/記事名 」に転送できるわけです。
タグ:wordpress
[…] 2016年2月28日WordPressのサイト移行で、旧から新サイトへ301転送設定をまとめて行えるRedirection […]