WordPressのパーマリンクをカテゴリーベースに変更する作業手順のメモ

このブログは2007年に当時流行していたCMS Movable Typeを使用して生まれました。

その後、ブログ管理といえばWordPressという時代になり、だいぶ前に無理矢理MTからWPへサイト移転しました。

今のWordPress(3.7とか3.8)はプラグインでMTの記事を簡単にインポート出来るようになっているのにMT側のエクスポートフ...

ドメイン移転、CMS載せ替えでURLだけ引き継ぎながらGoogleへのインデックスをうまく引き継いで引っ越し完了。

あれから7年




なんやこのURL

以前から気になっていたこのURL

これMTが自動生成する個別記事、ページへのURLをWPで無理矢理生成させていたもの。

本日、ブログのパーマリンク設定を変更した

ちなみにMT生成のURLは以下のような日付アーカイブで出力していた。

旧パーマリンクのメモ

パーマリンク設定はこれ

/%year%/%monthnum%/%postname%.html

いないと思うけどMTからの引っ越しなら便利かもです。

ドメイン名/年度/月/post-数字.html

という長たらしいURL

もし使いたかったら自己責任で使ってね。

そして、

URL引き継ぎでわざわざ運営していたブログですが、かっこ悪い長たらしいURLがいやだったので、シンプルかつわかりやすいURLへ変更します。

しかも

変更された新しいURLは

  • サイト内のリンク構造も自動的に新しい構造で生成
  • Googleの検索インデックスも自動的に自然と新しいURLへ

楽ちんなんです。

このあたりは後で説明します。

私が知る限りのことですので、他にも簡単な方法はあるかもですが、

一番楽チンにURLをカテゴリーベースでシンプルに変更しつつ、検索や外部リンクを自動的に301リダイレクトで引き継ぐ方法を残しておきます。

新しいパーマリンクはカテゴリー配下にページ名

パーマリンク設定はこれ

/%category%/%postname%.html

さらに

カテゴリーベースへ

.

(半角のコロン「.」を入力)

こうすることで

過去の記事は

ドメイン名/カテゴリー名/投稿名.html

となります。

この時点でドメイン内では自動的に新しいURLへリダイレクトされます。

.htmlはいるのか?

どっちでもいいと思うのですが、投稿(post)の末尾にこういう拡張子っぽい文字列があるほうが、アフィリンクとか生成するプラグインの吐き出し(スラッシュで終わるURL)やWordPress自動生成のリンクなどを差別化しやすいので便利なシーンも多いです。(重複するといろいろ面倒なので)

これで検索上がるぞ伝説も昔はありましたが、今はそんなの気にしなくてもいいかと。。

おまじない程度です。

あと、このパーマリンク設定が完了してれば

今書いてるこの記事は自動的にこうなります。

ドメイン名.カテゴリー名/数列ポスト名.html

いちいち記事名に日本語が混ざり込まないので便利でしょ。

※投稿後、記事の内容に即したURLへ変更してます。

日本語スラッグを変更しておく

カテゴリー名が日本語だと、せっかくカテゴリーベースのパーマリンクにしたのに、URLコピペした時なんかに日本語カテゴリーの部分だけ変に長くなります。

あれ、嫌いなんですよね。

面倒くさくて。。

この機会に全部カテゴリー名も半角に変更します。

これ、もともとカテゴリーのスラッグは

「レビュー」だったのを

「review」に変更。

こんな感じで他のカテゴリーも変えていく。

可能であればタグも変更したいけど、そこは面倒なので手を付けてない。

完璧主義者の方は同じ手順でタグも変えちゃえばいいかと。。

WordPress内で自動的一括書き換えが起こる

パーマリンクを今回のようなパターンで変更すると、記事内とかカテゴリー内で書いた文字にサイト内のURL(パーマリンク)があると、自動的に表示URLの書き換えが起こります。同時にサイト内でのリンク構造パーマリンクも書き換えられます。

めちゃ便利ですよねWordPress。

賢すぎる。

その際、「.」でカテゴリー名消した命令がうまく反映されてないことがあるので、こんな感じで残ってるものが修正しておきたい。

自動で書き換えられたテキスト例

ドメイン名/category/親カテゴリー名/子カテゴリー名

親カテゴリーと子カテゴリーあるようなパーマリンクで一部こんな感じの従来のカテゴリー表記が残る場合があります。

これを手で書き換えるだけ。

こんな感じ。

プラグインSearch Regexを使った一括変更も行います。

別に書き換えしなくても

ドメイン名/category/親カテゴリー名/子カテゴリー名/ポスト名

ページは表示されます。

しかし同時に

ドメイン名/親カテゴリー名/子カテゴリー名/ポスト名

でもページは表示できるんです。

どちらでも表示できるなら下のシンプルなカテゴリー表記がスッキリしていいですよね。

あとSEO的に重複コンテンツ扱いになる恐れがあるのははアカン

なのでページ内などサイト内でのリンクはこのように表記を統一させたい。

リンクのURLを統一させる理由

このカテゴリーのように、複数パターンのパーマリンクでページが表示される状態になってるので(category挟んでも表示可能)Googleへのインデックスで重複の不安が残ります。

でも安心してください。

Googleも賢いです。

このようなパターンで生成されるURLをは

「ワレどっちが優先やねん?」

みたいな感じでシバかれたりすることは無いと感じています

「なんかこっちパターンのリンクでたどるほうがスムーズやな、、」

というほうのURLで検索インデックスが書き換えられていく。つまり新しいcategoryベースのURLでサイト内のリンク構造が仕上がってるので自然とGoogleもその先のページURLなどを優先してインデックスしてくれるような。。

あくまでも経験上の話ですが、このパターンのパーマリンク設定に限って言えば、変更後放置してても検索結果のURLでは自動的に新しいほう(すっきりcategory表示のほう)に変更されやすいです。

  • 変更直後から
  • 自動的に
  • 検索経由のアクセスは
  • 新しいURLへ
  • ユーザーを導きます

自動的に

検索順位に好影響?

あんまり詳しいことはわかりませんけど

ここ2、3年で10サイトくらいこれで変更してるけど、

検索落ちるどころかむしろ上がったものもあるのでこうしてるだけです。

上がる確証とか理論とかは知りません。

たまたま放置していたサイトではいくつかのサイトが立て続けに上がったりしてるだけです。

別に検索上げたいわけではないのですが、

「なんか私のブログ、記事がどのカテゴリーの記事かわかんねー」

とか

「categoryトップページをうまく検索で上げてムフフっ!」

な人にはちょうどいいかもです。

このやり方が個人的には不利益なく使いやすいお手軽な変更方法かなと思うのでメモしておきました。

注意

やり終わって思い出した、、

というか今気づいたんですが

個別記事のURL変わるので

ハテぶ、Pocket、ツイート数など記事下のボタン数値リセットされます。

外部からのリンクは自動的に新しいURLへリダイレクトされますが、こういった外部プログラムによるリンクURLは変更されないため、記事下のボタンの数値が気になる方は別の方法を考えるしか無いですね。

ちなみに、

私はそういうのめちゃ気になるほうですが、検索経由や外部リンクからのアクセス自体は特にマイナスになるわけじゃないので、いつもこの方法で設定を変更しています。ハテブ100超えとかいっぱいあるのに全部ゼロになります。。悲しいですけどね。。

忘れないように事後チェック

この設定完了後、

アクセス解析で以下のチェックをしておきたい。

  • 古いURLへのアクセスが出てる
  • 404エラーが出てる

このあたりの不備が出れば

エラーページを特定してプラグイン(Redirection)で301リダイレクト設定する。

全体の流れは以上です。

Googleのアクセスは減ったことないのですが、試す場合はサイトにどうなるかわからないので自己責任でやってくださいね。失敗したらもとのパーマリンク設定にするだけでアクセス戻ったりするんで、WordPressって便利ですね。