WooCommerce get_author_posts_url() – Author URL redirecting to shop base

I found!

https://wordpress.org/support/topic/how-to-add-author-page-to-custom-user-role/#post-8807168

So in WooCommerce, this is achieved by the following code in wp-content/plugins/woocommerce/includes/wc-user-functions.php:

/**
 * Disable author archives for customers.
 *
 * @since 2.5.0
 */
function wc_disable_author_archives_for_customers() {
    global $wp_query, $author;

    if ( is_author() ) {
        $user = get_user_by( 'id', $author );

        if ( isset( $user->roles[0] ) && 'customer' === $user->roles[0] ) {
            wp_redirect( wc_get_page_permalink( 'shop' ) );
        }
    }
}

add_action( 'template_redirect', 'wc_disable_author_archives_for_customers' );


In your theme’s functions.php (or somewhere else appropriate), you could turn that off:

/* This removes the function that redirects customers to the shop page */
function enable_author_archives_for_customers() {
  remove_action('template_redirect', 'wc_disable_author_archives_for_customers');
}
add_action( 'after_setup_theme', 'enable_author_archives_for_customers' );