WordPressの日本語URLをウェブツール「URLエンコード・デコード」でエンコードしてから、プラグイン「Redirection」を使って新しいURLに301リダイレクトさせる方法を解説します。
日本語URLは一時期SEOで有利と言われていましたが、SNSでシェアすると意味不明の数字と記号にエンコードされて、URLが長くなるというデメリットがあります。
今回はブログに残った日本語URLを変更するため、URLを一度エンコードしてからプラグイン「Redirection」を使って、新しいURLに301リダイレクトさせました。
単にURLを変更するだけではSEO上デメリットが大きいので、301リダイレクトを使って新しいURLに評価を引き継げるようにしてください。
WordPress 日本語URLの修正
長らく放ったらかしだった自社サイトには問題点がいくつかありますが、その中の1つとして、最初に設定した日本語URLのページがずっと残ったままになっています。
WordPressではパーマリンク設定で「投稿名」を選ぶと、タイトルがそのままURLとして設定されるので、日本語で書いたタイトルは当然日本語URLとしてパーマリンク設定されます。
そのため、英数字のURLで公開したい場合は、いちいち日本語になったURLを英数字のURLに修正する必要がありました。
昔は日本語URLがSEOで有利だと言われていた時期があり、日本語のパーマリンクは修正せず、タイトルをそのまま日本語URLとして公開していました。
でも、近年は日本語URLのSEO効果が薄れてきたようですし、元々日本語URLはSNSでシェアするとURLが長くなりすぎるというデメリットがあります。
どうせ手直しをするなら、以前から気になっていた日本語URLを修正しようということで、日本語URLをウェブツール「URLエンコード・デコード」でエンコードしてから、WordPressプラグイン「Redirection」を使って新しいURLに301リダイレクトさせました。
以前にブログの日本語URLを英数字URLに変更したことがあり、今回も同じことをやってます。
301リダイレクトとは?
301リダイレクトはドメイン名やURLなどを変更した時の転居届みたいなもので、別名「永久転送」と呼ばれ、SEOの観点から見ても非常に重要な技術です。
上位表示されているウェブサイトのドメイン名や記事のURLを変更する場合は、301リダイレクトを使ってURLが移転したことを通知しないといけません。
例えば、サイト引っ越しの時に301リダイレクトを使うと、URLが変わっても以前のページ評価やリンクがそのまま引き継がれるので、検索順位の低下を防ぐことができます。
しかし、301リダイレクトを使わないと移転前と移転後のURLが別モノと判断され、ページ評価は引き継がれません。ですから、移転後は検索順位が一気に下がってしまいます。
301リダイレクトを行う際は.htaccessを使うか、Googleサーチコンソールで設定するのが一般的ですが、WordPressの場合は301リダイレクト設定プラグインを利用すると、簡単に301リダイレクトの設定ができます。
Redirectionで301リダイレクト設定
では、WordPressプラグイン「Redirection」を使って、301リダイレクトを設定してみます。
まずはプラグイン「Redirection」をインストールしましょう。左メニューの「プラグイン」→「新規追加」から、右上にある検索窓へ「Redirection」と入力します。
「今すぐインストール」をクリックして、Redirectionをインストールしてください。
Redirectionのインストールが完了したら、「プラグインを有効化」をクリックして有効化してください。以後は左メニューのツールからRedirectionを設定します。
最初にRedirectionを設定するときは、まずセットアップを行います。「セットアップを開始」をクリックしてください。
「基本セットアップ」で以下の設定を行います。
「Monitor permalink changes in WordPress posts and pages.」にチェックを入れると、記事のパーマリンクを変更してもRedirectionが自動的にリダイレクトを設定してくれます。
「Keep a log of all redirects and 404 errors.」はリダイレクトのログを取得します。ただし、ログが増えるに従い、データベースの容量が増加していきます。
「Store IP information for redirects and 404 errors.」は、上の「Keep a log…」と関連して、ログにIPアドレスを追加できるようになります。
チェックは一番上の自動リダイレクトだけにしておきました。「セットアップを続行」します。
最後にRedirectionの動作に必要な「REST API」をチェックします。黄色の「Working but some issues」でも特に問題はないので「セットアップ完了」してください。
Redirectionの設定画面で新しい転送ルールを追加します。
「新しい転送ルールを追加」にある上の入力欄「ソース URL:」に移転前のURLを、下の「ターゲット URL:」に移転後のURLを入力して、「転送ルールを追加」をクリックします。
以前はリダイレクト追加の前に日本語URLのエンコードが必要でしたが、現在はそのまま入力しても問題ありません。その他設定もそのままでOKです。
Redirection 301リダイレクト追加
新しい転送ルールが追加されると、リストに表示されます。
リストの転送ルールにカーソルを当てると、リダイレクトの編集、削除、無効化、リダイレクトの確認が行えます。Codeは301となっていますが、他の転送ルールも設定できます。
ちなみに、Redirectionで設定できるリダイレクトは以下の6種類です。通常は301(永久的なリダイレクト)か、302(一時的なリダイレクト)しか使いません。
301 (Moved Permanently)
302 (Found)
303 (See Other)
304 (Not Modified)
307 (Temporary Redirect)
308 (Permanent Redirect)
最後に「Check Redirect」をクリックして、きちんとリダイレクトされているかどうか確認してください。緑のチェックマークが表示されればOKです。
ちなみに、これは転送ルール一覧の右側に表示されているヒット数で、新URLへ転送した数を表しています。Redirectionで転送設定していなければ、これだけのアクセスが404エラーで表示されなかったということですね。
Redirectionの詳しい設定については、以下のプラグイン公式サイト(英語)をご覧ください。
あとはサーチコンソールでURLエラーが表示されている場合は修正しておきましょう。今回はサーチコンソールについて詳しく説明しませんが、こちらもSEOを考えると重要な作業ですよ。
以前にURLエラーだらけのサイトをサーチコンソールで修正すると、順位が一気に上昇しました。
日本語URLのエンコード
さて、ここで注意点がひとつあります。リダイレクトを.htaccess等で設定する場合は、文字コードが違うため日本語URLを入力しても正しくリダイレクトされません。
日本語URLは、以下のように一度エンコードする必要があります。一例を挙げると、上の日本語URLはそのままで、下のURLはエンコードされています。
日本語URLのエンコードはウェブツール「URLエンコード・デコード」を使いました。日本語URLを扱う場合に重宝するURLエンコード・デコードツールです。
まずはエンコード/デコードを選び、左窓にURLを入力して変換ボタンを押せば、ご覧のように変換されたURLが出力されます。今回の場合はエンコードですね。
しかし、エンコードされたURLを見ると、変換する必要のないスラッシュ「/」までエンコードされていますね。これを防ぐためには、半角英数字は除外して、日本語の部分だけをエンコードすればよいでしょう。その後でエンコードされた日本語URLに「http://」などを付け直してください。
流れで見るとこんな感じですね。
元のURL「http://wind-mill.co.jp/日本語URL/」→
日本語URLだけ抽出 「日本語URL」→
エンコード 「%E6%97%A5%E6%9C%AC%E8%AA%9E」→
正規URLに変換 「http://wind-mill.co.jp/%E6%97%A5%E6%9C%AC%E8%AA%9E/」
Redirectionは日本語URLがそのまま使えますが、.htaccess等でリダイレクトを設定する場合は、日本語URLをエンコードして読み取れるように変換してください。