特定の記事582件を301リダイレクトしました

kaoleft
当サイトでは1,200記事のうち582件リダイレクトしました

この上なく大変でしたので記事数が少ない場合は手作業推奨

プラグインAll-in-One WP Migrationで特定の記事を移行しました

下準備

サイトを別のドメインに丸ごとリダイレクトする場合は「.htaccessファイル」に新URLを指定すれば良いので簡単ですが、、

# Redirect
Redirect permanent / 新URL

特定の記事をリダイレクトするためには下準備が不可欠です。

kaoleft
もちろん器用な方は下準備など飛ばしてください

移行したいURLを抽出

エクセルでスラッグ抽出

特定記事のリダイレクトの下準備にエクセルを使いました

 

リダイレクトコード

.htaccessファイルに追記するのですが、直接追記するのではなく「ダウンロード→エディタで開いて追記→保存してアップロード」します。試しに1つのURLをテストしてから足していくと確実です。

◇.htaccessがある場所と書き方【初心者向け】
◇サクラエディタのインストール方法【Windows10】

301リダイレクトを指定することにより、コードを外さない限り永遠の転送となります。

# Redirect
RewriteEngine on
RewriteRule ^スラッグ$ 新URL [L,R=301]

参考までに、当サイトの場合はこんな風に指定。

# Redirect
RewriteEngine on
RewriteRule ^goto-travel$ https://zbnrk.com/goto-travel [L,R=301]

複数の記事をリダイレクトするためには、こんな風に延々と繋げていきます。

# Redirect
RewriteEngine on
RewriteRule ^スラッグ$ 新URL [L,R=301]
RewriteRule ^スラッグ$ 新URL [L,R=301]
RewriteRule ^スラッグ$ 新URL [L,R=301]

尚、上記の例はパーマリンクを「カスタム構造」「/%postname%」に設定した場合になります。

クエリー文字列【?p-123】を指定している場合はかなり複雑。「旧URLにはクエリー【?p-123】が含まれているけど、新URLではクエリーを除外」を指定します(コードテストはしていません)。

RewriteEngine on
RewriteCond %{QUERY_STRING} (^|&)p=123(&|$)
RewriteRule ^/?$ 新URL? [L,R=301]
kaoleft
【?p-123】を選択すると「該当ドメイン専用のURL」みたいな感じになって、いざという時手間が増えるので避けた方が無難です。推奨は「/%postname%」

 

ひたすらコピペ

サクラエディタにこの文を列記してから、エクセルで抽出したスラッグを延々とコピペしていったのですが、すぐに飽きて結局10日ほど要してしまいました。

RewriteRule ^スラッグ$ https://zbnrk.com/スラッグ [L,R=301]

「Controlキー+Cキー」でコピー。「Controlキー+Vキー」で貼り付け。

 

完成したら確認

ちゃんとリダイレクトできているか1つ1つクリックして確認します。当サイトでは様々な角度から確認した結果10個くらい間違いがありました。

 

移転元の記事を非表示にする

記事が重複しないよう、1つ1つ「クイック編集→非公開→更新」していきます。

 

プラグインは使わない方が良い

「簡単にリダイレクトできるプラグイン」もありますが、私は使わない方が良いと思います。なぜならリダイレクトはすぐ解除できるものではないからです。「移転元と移転先のURLを設定する」作業は同じですし、解除を待つ間にプラグインの更新が途絶えたらやり直しとなってしまいます。

◆301リダイレクトはいつ解除すれば良いのか?解除したらどうなるのか?

同様に、テーマのリダイレクト設定も使わない方が良いかと。一見便利ですけどね。

 

meta refreshタグは使わない方が良い

meta refreshタグでもリダイレクトは可能ですが(Yahoo!などで見かける「~秒後に新しいページへ移動します」というもの)、Googleでは推奨していませんので使わない方が無難です。

しかし疲れた…もうやりたくない…
301リダイレクトはいつ解除すれば良いのか考察
リダイレクト後、検索結果から旧サイトが消えない場合






サイト運営
わたしらしく