Вам нужно действие, а не фильтр.
Эта функция будет работать напрямую с вашим пакетом перевода, форматируя новую базу и предотвращая неоднократное выполнение функции flush_rewrite_rules, избегая плохой работы вашего блога.
function my_change_rewrite_base() {
global $wp_rewrite;
$bases = array(
'author' => __('Author'),
'search' => __('Search'),
'comments' => __('Comments)',
'pagination' => __('Page')
);
foreach ($bases AS $key => $base) {
$wp_rewrite->{$key} = remove_accents(mb_strtolower($base));
}
if ( ! get_option('my_change_rewrite_base_flushed', false) ) {
flush_rewrite_rules();
update_option( 'my_change_rewrite_base_flushed', time());
}
}
add_action('init', 'my_change_rewrite_base');