• 2018.07.26
  • WordPress

【WordPress】パーマリンクについて再考してみた

【WordPress】パーマリンクについて再考してみたのイメージ画像

パーマリンク、それはSEOを考えるものにとって、地味に悩まされるテーマ。
途中から変更すると、それまで蓄積した被リンクやら検索エンジンの評価、SNSのシェア数などがリセットされるので、初期段階で確定させた方が良いとされています。

今はまだ、メモ・備忘録がメインでアクセス数もたいしたことないので、今のうちに再考してみました。

そもそもパーマリンクとは?

パーマリンクとは、Webページの中の個別のコンテンツに対して設けられたURLのことである。特に、ブログにおける個々のエントリー(毎日の記述)に対して割り当てられたURLを指すことが多い。パーマリンク(Permalink)は、恒久・不変を意味する「パーマネント」(permanent)と「リンク」(link)が掛け合わされた造語である。

文章にするとわかりにくいですが、「ユーザーがページに辿り着けるように設定する固有の住所」みたいなものです。

どんなパーマリンクが良いのか?

基本的には「ユーザーのために」考えられた構造が良いとされていると思います。

  1. 1.URLがコンテンツの内容を予測できそうな文字列だと良いよね。
  2. 2.URLの長さは検索に影響しないけど、シンプルな方がユーザーにとって見やすいよね。
  3. 3.管理者が管理・解析しやすい構造の方がコンテンツの向上に役立つよね。

ざっくりですが、こんな感じでしょうか。
Googleもガイドラインで「シンプルな URL 構造を維持する 」ということを解説しています。

サイトの URL 構造はできる限りシンプルにします。論理的かつ人間が理解できる方法で(可能な場合は ID ではなく意味のある単語を使用して)URL を構成できるよう、コンテンツを分類します。
     ・
     ・
URL では区切り記号を使うと効果的です。http://www.example.com/green-dress.html という URL の方が、http://www.example.com/greendress.html という URL よりずっとわかりやすくなります。URL にはアンダースコア(_)ではなくハイフン(-)を使用することをおすすめします。

一番メジャーなパーマリンク

/%category%/%postname%/

今はどうか知りませんが、SEOのことを考えたときに上記のようなカスタム構造が良いとされていたと思います。
%category%が入ることでURLにキーワードが盛り込まれ、1や3の条件を満たします。
%postname%は任意の文字列にできるので2の条件も満たしやすい、という訳です。

面倒くさがりの方におすすめパーマリンク

前述のパーマリンクは、同じような記事は同じURLにしてしまうリスクがあるので、固有の文字列を考えるのが面倒です。
(※もちろん同じ文字列にしても「〇〇-2」みたいになるんでしょうけど、気持ち悪いですよね)
そんな私のような方には下記がおすすめです。

/%category%/%post_id%/
これであれば、%post_id%は固有の数字になるので、URLについて何も考えなくて良く、比較的条件も満たしています。

カテゴリーを変更するとパーマリンクも変わっちゃうじゃん?

当サイト開設当初は「%category%/%post_id%」で運営してきたのですが、カテゴリー構造自体を変更したくなったときにパーマリンクが変わってしまう問題に直面しました。

そこで、「%category%の役割を%postname%でやればいいのでは?」という考え方からのパーマリンクが下記。

/%postname%/%post_id%/

%postname%のところに「wp」やら「seo」ってキーワードを含めれたければ「wp-seo」みたいに設定すれば良いわけです。
そして、%post_id%も含まれているので、意識せずとも固有のURLにはなるという訳です。

ただ、%postname%が先に来ると、レスポンスが遅くなるという記事を見たことがあります。

WordPressの場合は、パーマリンク設定で記事名を表示する「/%postname%/」を最初に指定するとURL生成の時に余分なクエリ(リダイレクトだったかも)が発生してレスポンスが遅くなるそうです。「/%post_id%/%postname%/」などで回避できます。

/%post_id%/%postname%/

これでどうだ!ってまだやることがあります。

パーマリンクの設定を変更すると、%postname%に日本語がはいっちゃうので、英数字に変更してあげること。そして、ある程度転送設定もしてあげないと。。。

問題発生!カテゴリーページがうまくいかない

function.phpの中で、/category/を省略するように設定していたのですが、 そのせいでカテゴリーページが404エラーになったり、記事ページに転送されたりしてしまいました。

今回は、カテゴリーページよりも記事ページのパーマリンクを優先するということで、カテゴリーページの/category/を省略せずに表示させることで解決としました!