
WordPressのパーマリンク設定のオプションにあるカテゴリーベースとタグベース。
いまいち意味がわかっていなかったので、それぞれどのような設定をしたい時につけるものか調べてみてました。

カテゴリー / タグベースってどんな意味?
WordPressの「投稿」で作成したカテゴリーやタグのスラッグの上階層につくスラッグを「カテゴリーベース・タグベース」と言います。
記事を分類するために任意のカテゴリーやタグを作りますが、それら自身がカテゴリーやタグという分類に入っているイメージです。

そのため、WordPressの初期仕様では、「category」や「tag」といった大元の分類名がURLに含まれます。カテゴリーベースが「category」、タグベースが「tag」です。
例えば「カテゴリー」に「wordpress」を作成したとします。
この場合、カテゴリー一覧ページのURLは、https://example.com/category/wordpress/という形になります。
「wordpress」という「タグ」であれば、 https://example.com/tag/wordpress/ がタグ一覧ページのURLです。
どんな時に使う?
パーマリンク設置のオプションにあるカテゴリー / タグベースはどういう時に使うかというと、初期値である「category」や「tag」といった文字を変更したい時です。
例えば「category」ではなく、「cat」という名称に変更したいとします。
その場合、カテゴリーベースに cat を入力して保存。
そうするとカテゴリー一覧のURLは、https://example.com/cat/category_slug/となります。
タグベースも同じ使い方です。
URLの「category」文字列を削除するためには使用しない
WordPressの仕様で、一覧ページのURLに「category」や「tag」という階層が付くようになっていますが、冗長になってしまうため、これらを無くしたいこともあります。
この解決法の一つとして「カテゴリーベースにドット(.)を設置する」という方法が広まっていた時があり、私も参考にしたことがあります。
確かにこの方法でcategoryやtagの文字列を削除できますが、おすすめはしません。
カテゴリーベースにドットを設定すると、一階層目のカテゴリーは問題ないのですが、サブカテゴリーの一覧が表示されません。

タグベースにドットを設定しても、サブカテゴリーと同様に一覧ページが表示されませんでした。
このように意図しないエラーの原因になるので、ドットの設定はやめた方がいいと思います。
カテゴリーベースやタグベースの使い方は、大元の分類名であるcategoryやtagという名称を変えるものと覚えておきましょう。
「category」文字列を削除するならプラグインかfunctions.phpで対応
URLに含まれる「category」という文字を削除するならプラグインを使用するか、functions.phpにコードを記載して対応しましょう。
プラグインなら No Category Base (WPML) がおすすめです。プラグインを有効化するだけで「category」を取り除いてくれます。
「All in One SEO」や「Yoast SEO」といったSEOプラグインを使用している場合、「カテゴリーのプレフィックスの削除」「スラッグにカテゴリーのプレフィックスを表示する」といった項目が用意されているので、そちらで設定することもできます。
プラグインをあまり使用したくない、PHPファイルでの操作に慣れている方はfunctions.phpでリライトルールを設定する方法があります。
【参考】WordPressでURLからcategoryを消す方法と注意すること
途中で変更する場合は、リダイレクトの設定をお忘れなく!
確認環境
- WordPressバージョン : 6.1.1
- テーマ : Twenty Twenty-One, Twenty Twenty-Three
- 確認日 : 2023/1/24





