how to use two permalinks for one custom post type

I have a custom post type “article” where posts have a permalink structure (
I need each post in it to have two different templates according to its permalinks:
the first template single-article.php: displayed with the common permalink (
the second template abstract-template.php : is used whith a custom permalink (
I found a code and it worked perfectly with wordpress normal posts, but it didn’t work with custom post type:

function wpd_query_var( $query_vars ){
$query_vars[] = 'is_abstract';
return $query_vars;
add_filter('query_vars', 'wpd_query_var');
function wpd_post_rewrite(){
add_action( 'init', 'wpd_post_rewrite' );
function wpd_abstract_template( $single_template ){
    global $wp_query;
    if ( isset( $wp_query->query_vars['is_abstract'] ) ) {
        $single_template = locate_template( 'abstract_template.php', false );
    return $single_template;
add_filter( 'single_template', 'wpd_abstract_template' );

is there any suggestions to make it work with this custom post type?

Solutions Collecting From Web of "how to use two permalinks for one custom post type"