Contents
URLの文字列を変えてみる
今さらですが、当サイトのURLを見ると、「https://kamihiro.net/post-xxx」となっていました。
「post-xxx」のところが記事を表すのですが、WordPressのパーマリンク設定で「カスタム構造」を選択して「%postname%」としています。
WordPressを使い始めたころに、どこかのサイトに「こう設定しておいたらいいよ!」って書いてあったので参考にしました。
パーマリンクは記事が更新されてもURLが変わらないようにしておくことが目的だと思うのですが、検索されやすくするために、URLに意味ある文字を使ったほうがいいらしいです。
で、カスタム構造にしておくと、記事を投稿するときに「post-xxx」の部分を自分で編集できるということだったみたいです。
つまり、「%postname%」にしただけではダメってことですね(汗
ちゃんと読んでなかった自分が悪いんですけどね・・・
ということで、パーマリンクを変えてみようと思いました。
パーマリンクを変えるとこれまでのリンクが消失する
パーマリンクを変えると、当然ながらURLが変わってしまいます。
ということは、これまでのURLは使えない(見えない)ことになります。
せっかくブックマークしてもらっていても、「ページがありません」ってエラー表示されてしまいます。
これはマズイですよね。
これを回避する方法として「リダイレクト」を使います。
ちなみに、リダイレクトコードは幾つか種類がありますが、主なものは「301」「302」「307」といったところでしょうか。
それぞれ、以下のような意味があります。
- 301・・・永続的にリダイレクトします
- 302・・・一時的なリダイレクトを示す古いコード
- 307・・・一時的なリダイレクトです
詳しくはHTTPステータスを参照してください。
今回はパーマリンクの変更なので、永続的なリダイレクト指示なので「301」を使います。
リダイレクトの設定方法
実際にリダイレクトさせる設定をしなければなりません。
やり方としては
- .htaccessファイルに記述する
- プラグインを使う
のどちらかになると思います。プラグインを使う方法を紹介されているサイトを幾つか見たのですが、どうも上手くいかないケースがあるようです。
確実なのは.htaccessファイルに記述する方法ですが、こちらは1記事毎に設定を書く必要があるので面倒です。
いつもは面倒くさがりなので、できるだけ簡単に済ませようと思うのですが、今回はURL変更という少々リスクを伴う作業なので、確実性を重視して.htaccessを変更することにしました。
パーマリンク変更の手順
こちらのサイトが大変参考になりました。
今の記事URL一覧を取得して、変更したURLに置き換える設定を書くのですが、上記サイトで書かれている方法で簡単できました。
ありがとうございます。
.htaccessファイルの修正ですが、サイトによって書く指定場所が違っていたので、少し混乱しましたが、とりあえず下記のように </IfModule> の下にしました。
<IfModule mod_rewrite.c>
:
:
</IfModule>
Redirect permanent [元相対パス] [転送先URL]
これで古いURLでアクセスしてきても新しいURLにリダイレクトされます。
ちなみにRedirect の後ろの「permanent」が301リダイレクトを意味します。
リダイレクトのテストができるサイトがありましたので、念のため確認してみました。
リダイレクト検証ツール
エラーが出ないことを確認できたので、今回の作業は完了となりました。
今後、記事を書くときはパーマリンクを編集することを忘れないようしないと、この作業が水の泡になるので気をつけないといけないですね。
まだ記事数が少なかったので良かったですが、新しくブログを作る場合は計画性を持ってやらないといけないと反省しました。。。
もし表示されないページがあったらこそっと教えていただけると助かります(^_^;
コメント