Extend Nonce Lifetime for Specific Nonce Creation

Not sure if this is the case, but you should know that you need to add the filter both when generating the URL and upon verifying the nonce, i.e. the nonce lifespan needs to match in both cases. Also, you should use add_query_arg() to add query string to an URL..

So if you had this:

add_filter( 'nonce_life', 'quote_nonce_lifetime' );

$id = 123; // just for testing
$link = wp_nonce_url( add_query_arg( 'quote', $id, home_url( "https://wordpress.stackexchange.com/" ) ), 'view-quote' );

remove_filter( 'nonce_life', 'quote_nonce_lifetime' );

Then upon verifying the nonce, e.g. using wp_verify_nonce(), add the same filter as above:

add_filter( 'nonce_life', 'quote_nonce_lifetime' );

// *In actual implementation, you should check whether the $_GET['_wpnonce'] exists.
if ( wp_verify_nonce( $_GET['_wpnonce'], 'view-quote' ) ) {
    echo 'nonce is valid :)';
} else {
    echo 'nonce has expired!';
}

remove_filter( 'nonce_life', 'quote_nonce_lifetime' );