WordPressでは、カテゴリーページのURLには【category】という文字列が含まれます。
例:https://takayakondo.com/category/wordpress/
この【category】を消したい場合ってありませんか?
修正後:https://takayakondo.com/wordpress/
今回は、カテゴリーページのURLから【category】を消す方法を3つご紹介します。
カテゴリーページのURLから【category】を消す3つの方法
今回は、3つの方法をご紹介します。
- パーマリンクの設定を変更してURLから【category】を消す方法
- プラグインを使ってURLから【category】を消す方法
- function.phpにコードを追加してURLから【category】を消す方法
以上、3つの方法を個別に解説していきます。
パーマリンクの設定を変更してURLから【category】を消す方法
カスタマイズもプラグインの導入も不要です。
管理画面の「設定」→「パーマリンク設定」から設定を一部変更するだけでOK。
ただし、この方法が使えるのは特定の条件下のみとなります。
上記赤枠部分の【共通設定】が【/%category%/%postname%.html】の場合のみ有効名方法となります。
設定方法は簡単。
上記赤枠部分の【カテゴリーベース】に【.】を入力。
設定を保存してください。
これで設定は完了です。
カテゴリーページを確認するとURLから【category】が消えているのが確認できます。
元に戻したい場合は【.】を消して再保存してください。
プラグインを使ってURLから【category】を消す方法
プラグイン「WP No Category Base」を導入する方法です。
「WP No Category Base」は、難しい設定は必要ありません。
「WP No Category Base」をインストールして有効化するだけ。
それだけで、カテゴリーページのURLから【category】を消すことができます。
プラグインのインストールや有効化に関しては、【WordPressにプラグインをインストールする方法】で詳しく解説しています。
上記のコンテンツを参考に【WP No Category Base】をインストール&有効化してください。
「WP No Category Base」を有効化したら、カテゴリーページを開いてみましょう。
カテゴリーページを確認するとURLから【category】が消えているのが確認できます。
「WP No Category Base」を使うときは、1点だけ注意が必要です。
カテゴリースラッグが日本語の場合、404になるケースが確認されています。
カテゴリースラッグが日本語の場合は、予めカテゴリースラッグを日本語を含まないものに変更しておくことをお奨めいたします。
元に戻したい場合は、プラグインを無効化すればOK。
function.phpにコードを追加してURLから【category】を消す方法
以下のコードをfunctions.phpに追記してください。
function rem_cat_function($link) {
return str_replace("/category/", "/", $link);
}
add_filter('user_trailingslashit', 'rem_cat_function');
function rem_cat_flush_rules() {
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
add_action('init', 'rem_cat_flush_rules');
function rem_cat_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', 'rem_cat_rewrite');
カテゴリーページを確認してみてください。
カテゴリーページのURLから【category】が消えているのが確認できます。
まとめ
カテゴリーページのURLから【category】を消す3つの方法をご紹介しました。
- パーマリンクの設定を変更してURLから【category】を消す方法
- プラグインを使ってURLから【category】を消す方法
- function.phpにコードを追加してURLから【category】を消す方法
ご自身の環境にあった方法を選択してください。
今回ご紹介した方法以外にも、【.htaccess】を使う方法があります。
しかし、この方法を選択したときページネーションが正常に動作しなくなる不具合が確認されましたので、今回はご紹介を見送ることにしました。
興味があれば調べてみてください。
コメントを残す