MENU

【WordPress】カテゴリーページのURLから「category」を削除する

パーマリンクでカテゴリースラッグを表示する設定にすると、カテゴリーページのURLに「category」が挿入されてしまいます。この「category」は不要なことが多いと思います。

今回はカテゴリーページのURLから「category」を削除する方法について解説します。

目次

プラグインを使う

Yoast SEOなどのプラグインを使用すると、簡単な設定で「category」を削除することができます。
しかし、SEO系のプラグインを他で使用していたり、余計なプラグインを追加したくない場面があると思います。

そんなときは次の方法で実装することをお勧めします。

functions.phpに追記する

functions.phpに以下の記述を追加すると、カテゴリーページのURLから「category」を削除することができます。

余計なプラグインを追加する必要がないため、こちらの方法がお勧めです。

/**
 * カテゴリーページのURLから/category/を削除
 */
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');

まとめ

WordPressを構築したことがある人なら、誰もが一度は直面したことのある問題かと思います。

WordPress構築の際は必ずfunctions.phpに記述する”テンプレート”としてまとめておくと良いかもしれません。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Webデザイナーのmutaです。
当ブログでは主にWeb制作やITの知識について発信しています。

目次