Set page template automatically according to parent slug

You can override the hierarchy and load a specific page template via the page_template filter.

The fastest way is to identify the parent page by ID:

function wpd_page_template_filter( $template ){
    $page = get_queried_object();
    if( 42 == $page->post_parent ){ // en page has ID of 42
        $template = locate_template( 'page-en.php' );
    }
    return $template;
}
add_filter( 'page_template', 'wpd_page_template_filter' );

or you can also identify it by slug with an extra step:

function wpd_page_template_filter( $template ){
    $page = get_queried_object();
    $parent_slug = get_post_field( 'post_name', $page->post_parent );
    if( 'en' == $parent_slug ){
        $template = locate_template( 'page-en.php' );
    }
    return $template;
}
add_filter( 'page_template', 'wpd_page_template_filter' );

If your page is a grandchild or lower, you can get the topmost parent with the get_ancestors function

tech