After hours of searching and trying different functions, I've finally successfully removed the /author/ from all of our users profile URLs. So its just /username/
However, when new users register their profile URL's all give 404's. I can fix this by going into the permalinks screen and clicking save but we register lots of users and I cannot do this for each one.
This is the function I'm using... Any Ideas!?
Thanks!
add_filter('author_rewrite_rules', 'no_author_base_rewrite_rules');
function no_author_base_rewrite_rules($author_rewrite) {
global $wpdb;
$author_rewrite = array();
$authors = $wpdb->get_results("SELECT user_nicename AS nicename from $wpdb->users");
foreach($authors as $author) {
$author_rewrite["({$author->nicename})/page/?([0-9]+)/?$"] = 'index.php?author_name=$matches[1]&paged=$matches[2]';
$author_rewrite["({$author->nicename})/?$"] = 'index.php?author_name=$matches[1]';
}
return $author_rewrite;
}
if( !is_admin() ) {
add_action('init', 'author_rewrite_so_22115103');
}
function author_rewrite_so_22115103() {
global $wp_rewrite;
if( 'author' == $wp_rewrite->author_base ) $wp_rewrite->author_base = null;
}