WordPress入門

WordPressのカテゴリーベース「category」を変更・削除する方法

2020年8月23日

WordPressのカテゴリーベース「category」を変更・削除する方法

WordPressのデフォルトのパーマリンク設定では、カテゴリー一覧ページのURLに「category」という文字列が入ってしまいます。

気にならない人は無視されていると思いますが、できればすっきり見せたいので削除したいという方も多いと思います。

今回は、WordPressのカテゴリーベース「category」を削除する方法について説明していきます。

カテゴリーベースとは

カテゴリーベースとは、WordPressでカテゴリーであることを示すために、カテゴリーページのURLに自動的に入る文字列になります。カテゴリーのスラッグ名に「category」という文字列が入ってしまいます。

https://nuko-blog.net/category/web/

タグベースについて

タグもカテゴリー同様にタグベースが存在します。

しかしタグに関しては、削除することは可能ですがしない方が良いでしょう。

というのもタグベースまで削除してしまうと、カテゴリーと同じ階層になってしまうので、混合しやすいURL構造になってしまいます。

https://nuko-blog.net/tag/wordpress/

カテゴリーベースを変更する方法

カテゴリーベースの「category」を任意の文字に変更するのはとても簡単です。

https://nuko-blog.net/category/web/

WordPressメニュー

WordPressの管理画面から左メニューの「設定」→「パーマリンク設定」をクリックします。

パーマリンクのオプション設定

パーマリンク設定のオプションから変更することができます。

デフォルトでは空欄になっており、空欄の場合は「category」が表示されるようになっています。

パーマリンクのオプション設定

「category」ではなく「topics」という文字列にしたい場合、上記画像のようにカテゴリーベースの入力欄に文字列を入力して保存します。

カテゴリーベースを削除する方法

プラグインで削除する

WP No Category Base

色々試したのですが、「WP No Category Base」を使うのが一番確実かと思います。

複雑な初期設定もなく、プラグインをインストール・有効化するだけで、カテゴリーベースが削除されます。ちなみに「category」付きのURLにアクセスがあった場合、「category」無しのURLにリダイレクトしてくれるので、リンクが切れるという心配もありません。

プラグインのインストール・有効化については、下記を参考にしてください。

こちらもCHECK

【WordPress初心者】WordPressのプラグインのインストール方法・設定方法まで解説
【初心者向け】WordPressのプラグインとは?インストール方法・設定方法まで解説

続きを見る

function.phpでURL生成ロジックを変更して削除する

あまりプラグインを入れたくないという方向けにおすすめなのが、「function.php」でURL生成ロジックを変更して削除する方法がおすすめです。

function remcat_function($link) {
return str_replace("/category/", "/", $link);
}
add_filter('user_trailingslashit', 'remcat_function');
function remcat_flush_rules() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
add_action('init', 'remcat_flush_rules');
function remcat_rewrite($wp_rewrite) {
$new_rules = array('(.+)/page/(.+)/?' => 'index.php?category_name='.$wp_rewrite->preg_index(1).'&paged='.$wp_rewrite->preg_index(2));
$wp_rewrite->rules = $new_rules + $wp_rewrite->rules;
}
add_filter('generate_rewrite_rules', 'remcat_rewrite');

上記のソースコードを「function.php」に追記するだけで、「category」を置換して非表示にしてくれます。

パーマリンク設定で削除する

パーマリンクのオプション設定

カテゴリーベースという項目に「.(ドット)」を入力することで、簡単に「category」を削除することができます。

上記の場合、共通設定の項目でパーマリンクのカスタム構造を「/%category%/%postname%.html」とする必要があります。

・共通設定
カスタム構造を選択して「/%category%/%postname%.html」とする。

・オプション
カテゴリーベースで「.(ドット)」と入力する。

「.html」を付けた形でないとサブカテゴリーページが404エラーになります。

当サイトで申込みが多いプログラミングスクール・教室はこちら!

【1位】ポテパンキャンプ:Webエンジニア輩出率No1

【2位】CodeCamp:満足度96.6%のプログラミングレッスン

【3位】DMM WEBCAMP:プログラマー転職成功率98%

【4位】TechAcademy:プログラミングスクール受講者数No1

【5位】GEEK JOB:満足度・転職率が高い・20代社会人経験者向け

-WordPress入門