diff --git a/wp-includes/general-template.php b/wp-includes/general-template.php index 876124e7fc..1ec7e1a762 100644 --- a/wp-includes/general-template.php +++ b/wp-includes/general-template.php @@ -667,8 +667,7 @@ function post_type_archive_title( $prefix = '', $display = true ) { if ( ! is_post_type_archive() ) return; - - $post_type_obj = get_post_type_object( get_query_var( 'post_type' ) ); + $post_type_obj = get_queried_object(); $title = apply_filters('post_type_archive_title', $post_type_obj->labels->name ); if ( $display ) diff --git a/wp-includes/query.php b/wp-includes/query.php index 015577dae3..e38c2dbaba 100644 --- a/wp-includes/query.php +++ b/wp-includes/query.php @@ -2675,6 +2675,8 @@ class WP_Query { $this->queried_object = $term; $this->queried_object_id = (int) $term->term_id; } + } elseif ( $this->is_post_type_archive ) { + $this->queried_object = get_post_type_object( $this->get('post_type') ); } elseif ( $this->is_posts_page ) { $page_for_posts = get_option('page_for_posts'); $this->queried_object = & get_page( $page_for_posts );