I want to add a custom “all posts by author” by authors name. How?

Attach a filter that only outputs a different link when you’re on single.php:

function wpse25725_author_posts( $link )
{
    // abort if not on single.php
    if ( ! is_single() )
        return;

    // modify this as you like - so far exactly the same as in the original core function
    // if you simply want to add something to the existing link, use ".=" instead of "=" for $link
    $link = sprintf(
        '<a href="https://wordpress.stackexchange.com/questions/25725/%1$s" title="%2$s" rel="author">%3$s</a>',
        get_author_posts_url( $authordata->ID, $authordata->user_nicename ),
        esc_attr( sprintf( __( 'Posts by %s' ), get_the_author() ) ),
        get_the_author()
    );

    return $link;
}
add_filter( 'the_author_posts_link', 'wpse25725_author_posts' );