先日公開した「SEO対策で注意したいホームページで確認する8個のチェックポイント」で「URLの最適化」でまとめた「シンプルで分かりやすい構造」に「不要なパラメータや数字の羅列を避け、できるだけ短く簡潔にすることが理想です。」と書きました。
ホームページのSEO効果を高めるために確認すべき“8つのポイント”を具体例付きで解説。訪問者の増加・検索順位の向上を目指すために必ず実施したい8項目をチェックリストで簡単に確認できます。
でも、この記事を書くまで、このブログは記事番号(post_id)を使っていました。。。だって投稿名を決めるのか面倒だったからです。そのためブログを始めた時に記事を増やすことを優先し、面倒な投稿名(postname)は付けずに手を抜いていました。
自分でまとめたSEO対策に書いた内容と記事が異なっていると説得力がありません。ただなぜ記事番号(post_id)だと駄目なのか、詳細は関連記事の「SEO対策で注意したいホームページで確認する8個のチェックポイント」で説明していますが、簡単に言うとURLもSEOで評価されるので、単純な番号ではページ内容がわからないので、投稿名(postname)でどんなページなのか説明すると、SEOで評価されるためです。今回は、良いタイミングなので、記事番号(post_id)から記事名(postname)に変更したので、その時の作業をまとめてみました。
WordPressのパーマリンク構造を記事番号(post_id)から記事名(postname)に変更したい
なぜ記事名(postname)の方がSEO的に良いのか疑問に思っている
ホームページをSEOで対策しアクセスを増やしたい
はい。知ってました。URLも閲覧者に役立つ言葉を含めると良いのは知っていましたが、ブログを始めたタイミングで、どのような記事を書くか企画が明確に決まっていなかったので、記事名の規則を考えるのが面倒で後回しにしてしまいました。
SEOに必要なURLの最適化とは?
記事番号(post_id)形式のデメリット
投稿名(postname)形式のメリット
URLをパーマリンクで変更する際の注意点
【注意点①】既存URLがすべて変わる
【注意点②】新しいURLにリダイレクト
【注意点③】URLの重複
【注意点④】日本語URL
【注意点⑤】内部リンクの確認・修正
【注意点⑥】検索エンジンへの再通知
WordPressのパーマリンク構造を変更する方法
WordPressのバックアップ
旧URLと新URLの一覧表を作成
投稿のスラッグを設定
リダイレクトの準備
パーマリンク構造を変更
リダイレクトの設定
リダイレクトの確認
Search Consoleで再インデックス申請
先日公開した「SEO対策で注意したいホームページで確認する8個のチェックポイント」で「不要なパラメータや数字の羅列を避け、できるだけ短く簡潔にすることが理想です。」と書きました。
Googleの「検索エンジン最適化(SEO)スターター ガイド」の「わかりやすいURLを使用する」に以下のような文面があります。
【記事引用】「検索エンジン最適化(SEO)スターター ガイド」
https://developers.google.com/search/docs/fundamentals/seo-starter-guide?hl=ja
わかりやすいURLを使用する
URL の各部分はパンくずリストとして検索結果に表示できるので、ユーザーも URL から結果が役に立つかどうかを把握できます。
Google では URL 中の言葉に基づいて自動的にパンくずリストを学習していますが、技術的には、構造化データによって影響を与えることもできます。次の例のように、ユーザーの役に立ちそうな言葉を URL に含めることをおすすめします。
https://www.example.com/pets/cats.html
たとえば、次の例のようにランダムな識別子だけが含まれている URL は、あまりユーザーの役に立ちません。
https://www.example.com/2/6772756D707920636174
上記の引用にも、ユーザーの役に立ちそうな言葉をURLに含めることをおすすめしているので、SEOに直接影響はしなくても、閲覧者にクリックしてもらう可能性が高くなれば、自然とSEO的にも有効になっていきます。
「役に立ちそうな言葉」の定義が不明ですが、ページ作成時に決めたメインキーワードは必ず含めましょう。
初期設定の「?p=123」などの数値URLは、次のような問題があります。
「/sample-post/」のような postname形式 に変更すると、以下の効果が得られます。
私は仕事柄、そのページのURLは確認するようにしていますが、ほとんどの人は見ていない印象です。ただ最近はフィッシングサイトが多く、怪しいURLはクリックされない可能性もあるので、できるだけページ内容に合ったURLを付けるようにしましょう。
WordPressの記事ページのURLを変更するには、管理画面のパーマリンク構造で簡単に変更することが可能です。しかし、以下の内容を注意しないと、記事が表示されなくなったり、サイトの評価を著しく下げることになるので、設定を変更する前に必ず注意点をご確認ください。
以前の記事番号(?p=123)形式のURLは使えなくなります。そのため、何も対策しないと外部サイトやSNSからのアクセスが404エラーページになる可能性があります。
SEO評価を維持するために、旧URLから新URLへ301リダイレクトを設定しましょう。
※具体的な設定は下部の説明に記載。
投稿や固定ページで同じURLがあると競合して表示エラーになります。投稿名は他のページと同じにならないように設定して、URLが重複しないようにしてください。
日本語URLの利用は問題ありませんが、エンコードされるため意味がわからない長い文章になってしまいます。これでは「ユーザーの役に立ちそうな言葉」になっていません。英数字を使って意味がわかる内容にしましょう。
記事一覧ページなどは、パーマリンク構造を変更るすと自動的に新しいURLに切り替わりますが、固定ページや記事の中で手動で書いたURLのリンクは自動的に切り替わりません。新しいURLに手動で修正が必要です。
※リダイレクトを設定すればリンク切れは無くなりますが、何かの理由でリダイレクトの設定が無くなると、リンク切れになってしまいます。できるだけURLを変更することをオススメします。
301リダイレクトを設定すれば、ページ評価を維持しながら新しいURLにインデックスがそのうち切り替わりますが、Google Search Consoleでサイトマップを再送信すると早く反映させることが可能です。
注意点は必ず確認してください。特に①はページが表示されなくなり、②はいままで積み上げた評価を全て捨てることになります。
設定変更に自信がなければ、是非ご相談ください。
パーマリンク構造の変更手順について、具体的に説明します。
今回は記事番号(post_id)を記事名(postname)に変更しますが、パーマリンク構造を変更する場合は、基本的にこちらと同じ方法で対応が可能なので、パーマリンク構造の変更内容が異なっても、参考にしていただければと思います。
パーマリンク構造の変更は、サイト全体に影響します。
そのためWordPressのバックアップは必ず実施しましょう。
トラブルが発生してもバックアップがあれば安心です。そんなWordPressのバックアップについて目的・方法・おすすめツールを徹底解説いたします。
はじめに、現在の記事ページを全て一覧表に記入します。
そこに現在のURL(旧URL)と新しいURLを決めて記入し一覧表を完成させます。
URLはフルパスでも問題ありませんが、私はパスだけ記入しました。パスだけにした場合は、パーマリンク構造にカテゴリ(category)などを使っている場合は、カテゴリの「/wordpress/」や「/seo/」も一覧表に記入しないと、後から問題が発生するので注意してください。
一覧表を作らなくても設定の変更は可能です。しかしこの後の作業「投稿のスラッグを設定」「リダイレクトの準備」「リダイレクトの確認」で同じ内容で設定や確認が必要となるので、面倒でも一覧表を作ることを強くオススメします。
【記入例】
旧URL:/wordpress/shortcodes/978/
新URL:/wordpress/shortcodes/create-your-own-shortcode/
※「/wordpress/shortcodes/」がカテゴリ部分
「旧URLと新URLの一覧表を作成」を見ながら、全ての投稿を編集かクイック編集で「スラッグ」を変更していきます。
注意点として、新URLの内容をそのまま入力はせず、カテゴリ部分と「/」は外して入力します。
【記入例】
新URL:/wordpress/shortcodes/create-your-own-shortcode/
スラッグ:create-your-own-shortcode
※カテゴリ部分の「/wordpress/shortcodes/」はスラッグに入力しない
WordPressでリダイレクトを行う方法はいくつかあります。あまり頻繁に設定はしないと思いますが、設定ミスでホームページが全て表示されなくなるなど、不具合も発生しやすいので、開発環境で事前に確認したり、バックアップして、いつでも元に戻せる状態で作業してください。
ここでは用意のみです。
実行は「パーマリンク構造を変更」の後に実施します。
プラグインなら管理画面で簡単にリダイレクトを設定することができます。
代表的なプラグインをご紹介します。
テーマのfunctions.phpにリダイレクト処理を追加する方法です。
記述はPHPなので、プログラミングの知識があれば問題なく対応できると思います。
エックスサーバーやロリポップなどのホスティングサーバーの場合は、Webサーバーのコントロールパネルに「リダイレクト設定」機能があります。コントロールパネルならGUIで簡単に設定が可能です。
.htaccessの使用を禁止しているホスティングサーバーは、コントロールパネルで設定する必要があります。ただエックスサーバーもロリポップも.htaccessが使えるので、あえて使う必要はないと思います。
Webサーバーをapacheで稼働させている場合は、.htaccessファイルでリダイレクトすることができます。
.htaccessは設置するフォルダ階層で挙動が異なるので、設置場所と記述内容は意識して設置してください。
私は.htaccessしか使いません。理由はサーバーの引っ越しでリダイレクトを良く作るので経験があることと、複数の設定をする場合、一括で簡単に.htaccessのリダイレクトを作れるからです。
ただトラブルも多いので、ある程度の経験は必要だと思います。
WordPressの管理画面で「設定」→「パーマリンク」を選択します。
表示された「パーマリンク構造」を変更します。

「リダイレクトの準備」を先に実施したのは、パーマネント構造を変更すると記事ページのURLが変更されるので、スグに「リダイレクトの設定」を実施する必要があるからです。
「リダイレクトの準備」で用意したリダイレクトを実施します。
.htaccessで設定する場合は、ファイルをFTP等でアップロードします。
「旧URLと新URLの一覧表を作成」で作った一覧を元に旧URLをブラウザに入力し、新URLにリダイレクトするか、全て確認します。
なぜ全て確認が必要かと言うと、記述ミスなどで、正常に動いていない場合や、他のリダイレクトと干渉して誤動作したりする場合があるためです。
できれば、リンク切れを確認する機能の実施もオススメします。理由はリダイレクト機能は思ってもいない箇所に影響がでることもあるので、サイトの規模が大きい場合は特にリンク切れの確認も一緒に実行しましょう。
リダイレクトを確認し、サイトに問題がなければ、Google Search Consoleでサイトマップを送り、パーマネント構造を変更したことを通知します。
私はプラグイン「All in One SEO」を使ってsitemap.xmlを自動生成しているので、そのURLをGoogle Search Consoleに送信しました。送信しなくても、そのうちインデックスは書き換わりますが、sitemap.xmlをGoogle Search Consoleに送信した方が、早くインデックスを書き換えられます。

今回はWordPressのパーマリンク構造をpost_idからpostnameに変える方法について説明しました。
実際にこのサイトで対応しながら、この記事を書きましたが、実は.htaccessの書き方でミスをしました。
パーマネント構造を変更し、旧URLにアクセスすると404ページが表示されます。試しに新しいURLは正しく表示されるので、初めは.htaccessの記述をミスしたと考え記述を色々と変えてみましたが、何も変化がありません。そのため、一度.htaccessを元に戻し、原因調査をしました。ただ冷静に考えるとスグ原因に気が付きました。
WordPressを動かしているサイトの.htaccessは、先にWordPressが追加した記述があります。今回はその.htaccessにリダイレクトを最後に追記しましたが、この場合は先にWordPressが動いてしまいます。そのため404ページをWordPressが表示させていました。
そこで、リダイレクトを先頭に記述したところ、問題なく動作させることができました。
.htaccessには、動作の優先度があります。今回のようにファイルの先に書いたり、各階層に書いたり、apacheの設定に書いたり、それぞれ動き方が変わります。その辺も経験なので、高難易度と言われています。
ただ、記述内容は単純なので、初心者でも対応は可能だと思います。何事もトライ&トライなので、この記事を読んで色々と試していただければ幸いです。
このサイトでも活用しているオススメの素材サイトです。
是非こちらのバナーからご利用ください。
wildhawkからも写真素材を提供しています。是非ご活用ください