[WordPress]URLから/category/の文字を消去する方法

WordPress
スポンサーリンク

WP No Category Base というプラグインを使えば簡単に/category/を消すことができますが、
今回紹介するfunctions.phpを編集する方法の方が、WPMLの翻訳プラグイン利用時でも有効な手段なためおすすめです。

functions.phpでURLからcategoryの文字を消す

function remove_cat_function($link) {
	return str_replace("/category/", "/", $link);
}
add_filter('user_trailingslashit', 'remove_cat_function');
function remove_cat_flush_rules() {
	global $wp_rewrite;
	$wp_rewrite->flush_rules();
}
add_action('init', 'remove_cat_flush_rules');
function remove_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', 'remove_cat_rewrite');

コメント

タイトルとURLをコピーしました