カテゴリー一覧のURLからカテゴリーベース「category」を削除する方法
WordPressのデフォルト設定では、カテゴリー一覧のURLには「/category」が自動的に挿入され、この部分をカテゴリーベースといいます。
例えば、このサイトの「ウェブカテゴリー」のアーカイブページであれば、URLはこのようになっています。
https://296.co.jp/category/web
これでも運用上はまったく問題ないのですが、見た目上URLを短くしたいというような場合に「/category」を取り除くことができます。
目次
URLから「/category」を取り除く方法
functions.phpに追記する方法
下記をfunction.phpに追記することでカテゴリベースを削除できます。
add_filter('user_trailingslashit', 'remcat_function');
function remcat_function($link) {
return str_replace("/category/", "/", $link);
}
add_action('init', 'remcat_flush_rules');
function remcat_flush_rules() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
add_filter('generate_rewrite_rules', 'remcat_rewrite');
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;
}
管理画面からおこなう方法
管理画面にある[設定]にマウスポインタをあわせて[パーマリンク設定]をクリックします。[カテゴリベース]はデフォルトでは空欄になっていますが、ここに[.(ドット)]を入力します。
そうすると、URLから「/category」が取り除かれて下記のようなURLに変更できます
https://296.co.jp/web
ただし、この方法には欠点があります。
[パーマリンク設定]の[共通設定]を[投稿名]にしている場合、ページが正常に表示されない可能性がでてきます。
パーマリンク設定を変更する場合の注意点
リンク切れや検索エンジン評価への影響
このようにかんたんにパーマリンク設定を変更することでURLを変えることはできますが、リンク切れが発生したり、場合によってはGoogle評価がリセットされることで評価に影響を及ぼす可能性もあります。
URLの生成ルールを変更する場合は慎重におこなうようにしましょう。
固定ページのスラッグとの影響
カテゴリのスラッグが、固定ページのスラッグに同じものがある場合には、固定ページ側が表示されてしまうので注意が必要です。