WordPress – body_classから特定のクラスを削除する

body_class()から不要なクラスを削除したい場合フィルターフックを使えば特定のクラスを削除することが可能です。単体のクラスであれば下記のコードをfunctions.phpに追記して'remove-class-name'を削除したいクラス名に変更してください。

add_filter('body_class', function($classes){ 
    unset($classes[array_search('remove-classname', $classes)]);
	return $classes;
});

上記の例は1つのクラスを削除する方法ですが複数のクラスを削除したい時があるかと思います。その場合は下記をご使用ください。

複数のクラスを削除したい場合

もし削除したいクラスが複数ある場合、次のコードをfunctions.phpに使うといいかと思います。$remove_classに削除したいクラス名を追記してあげることで削除することが可能です。

add_filter('body_class', function($classes){
	$remove_class = [
		'logged-in',
		'single',
		'sample-class',
	];
    return array_diff($classes, $remove_class)
});