- 古いURLから新しいURLに行けるようにする方法はありますか?
- WordPressのおすすめプラグインはありますか?
このような疑問にお答えします。
わたしは、WordPressでこのブログを運営して2か月ほど経ちますが、今更ながらパーマリンクを変更しました。パーマリンクはブログを始めると同時に設定することをおすすめします。
なぜなら、わたしは、63記事に対して、
- 以前使っていたパーマリンクを含む旧URLを新しいパーマリンクを設定した新URLに変更
- 古い方のURLからでも、新しいURLにたどり着けるように301リダイレクトを設定
どいう作業をしました。
これが本当にしんどかったです。
でも、63記事という早めの時点で気が付いて良かったかもしれません。
ここちらの記事では、そんなわたしの体験談から、WordPressブログのパーマリンクを変更してリダイレクトする方法とおすすめプラグインをご紹介します。
WordPressブログのパーマリンクを変更
WordPressブログのパーマリンクを変更したのですが、推奨されるパーマリンク構造の例から選んだのは、
- ドメイン(.comや.netなど)/Category(カテゴリー)/postname(投稿に関するキーワード)
- ドメイン(.comや.netなど)/Postname(投稿に関するキーワード)
- ドメイン(.comや.netなど)/Postname(投稿に関するキーワード)/post_id(自動的に付与される数字)
2番目のドメイン(.comや.netなど)/Postname(投稿に関するキーワード)を選びました。
はじめは、1番目のカテゴリー名を含むものを考えていましたが、自分で振り返ってみると「カテゴリー」って意外とちょくちょく変えてるとおもいました。今後もちょくちょく変更することがあるたびに、パーマリンクも変更することになりそうです。
なので、パーマリンクからカテゴリーを排除して2番の「投稿に関するキーワード」のみのパーマリンク設定に決めました。
パーマリンク変更の問題点
パーマリンクを変更するときの問題点は、今まで使っていたURLは利用できなくなり、404エラーが発生しブログが閲覧できなくなることです。
404エラーの解決策「リダイレクト」とは?
リダイレクトとは、URLが変更された時に、404エラーが出る旧URLにアクセスしても新URLに自動的にアクセスすることができる方法です。
リダイレクトには、301リダイレクト、302リダイレクト、307リダイレクトなど、さまざまなタイプのリダイレクトがあります。
しかし、ここではシンプルにするために、301リダイレクトのみを取り上げます。
301リダイレクトは、「パーマリンク変更」のように、ブログのURLが移動され、訪問者に新しいURLを表示させたい場合に有効なリダイレクトです。
また、旧URLのSEO評価をある程度引き継ぐことができるようです。
301リダイレクトが簡単に設定できるWordPressプラグイン「Redirection」
WordPressプラグイン「Redirection」は、301リダイレクトをカンタンに設定できるのでおススメです。
Redirectionは10年以上存在するWordPressプラグインで、多くの人から何度もおすすめされてきました。しかも、無料です!
Redirection使い方
Redirectionをインストール
WordPressのダッシュボード(管理画面)の「プラグイン」から「新規追加」をクリック
「プラグインの検索」窓に「Redirection」と入れて検索します。
「Redirection」が見つかったら「今すぐインストール」をクリック。
インストールが済んだら、「有効化」をクリックします。
Redirectionの設定
「ツール」から「Redirection」をクリックして設定を開始します。
ソースURL
ソースURLに、旧URLを入力します。パーマリンクだけでも構いませんが、フルパス(URLのすべて)を入力しても大丈夫です。パーマリンクのみ抽出して表示されます。
Query Parameters (クエリパラメータ)
- Exact match all parameters in any order(クエリパラメータを正確に一致させる)これがデフォルトです
- Ignore all parameter(すべてのクエリパラメータを無視する)
- Ignore & pass parameters to the target(無視してターゲットにパラメーターを渡す)
1. Exact match all parameters in any order(クエリパラメータを正確に一致させる)
これがデフォルトです。わたしもこれを指定しています。
2. Ignore all parameter(すべてのクエリパラメータを無視する)
例えば、ソースURL(旧URL)が/my-old-postの場合、/my-old-post?query=1など(?以下がクエリパラメータと呼ばれる)クエリパラメータは無視されて/my-old-postと同じとみなされる。
3. Ignore & pass parameters to the target(無視してターゲットにパラメーターを渡す)
2と同様にクエリパラメータは無視して/my-old-postと同じとみなすが、ターゲットURL(新URL)にクエリパラメータを渡す。例えば、ターゲットURLが/my-new-postの場合、/my-new-post?query=1など
ターゲットURL
新しいURLをフルパス(URLのすべて)で入力します。
URLオプション
- 「正規表現」–正規表現を使用してURLを照合します
- 「スラッシュを無視する」末尾のスラッシュを無視します。例えば、/my-old-postと/my-old-post/は一致します。わたしはこれを選択しています。
- 「大文字小文字を区別しない」大文字と小文字の区別を無視します。例えば、/MY-OLD-POSTと/my-old-postは一致します。
最後に「保存」をクリックすると設定完了です。
以上で、301リダイレクトの設定ができました!