Custom Post Type Specific Post Template

For some reason wordpress don’t honor Template_Hierarchy. The best way to get around this problem is to “force” wordpress to use the custom single.php template that you created. To accomplish that, add the following function underneath your CPT.

   /* Information Posts Template selection - a single.php just for our wrestler_profiles */
function pietergoosen_info_template_include( $original_template ) {
    if ( isset( $wp->query_vars['wrestler_profiles'] ) && false == $wp->query_vars['wrestler_profiles']  ) {
        return get_template_directory() . '/single-wrestler.php';
    } else {
        return $original_template;
    }
}

add_filter( 'template_include', 'pietergoosen_info_template_include' );

Just remember, if you are using your CPT in a child theme or in a plugin, change get_template_directory() accordingly