How to remove author base in WordPress How to remove author base in WordPress wordpress wordpress

How to remove author base in WordPress


I've tested this combined solution but wasn't working before regenerating of permalinks. You can do it, as brasfolio described : simply clicking save on permalink page in dashboard.

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;}


Your code appears fine. Manually flush your permalink structure to reflect these changes.

1)  Settings -> Permalinks -> choose default -> Save2)  Revert the settings to original.


Try: RedirectMatch 301 ^/author/(.+)$ http://www.yourblog.com/$1

This will go in your .htaccess