Ensure that get_archive_template() only loads a post type archive (archive-$post_type.php file) if there is exactly one post type in the query.

props scribu.
see #22956.
for trunk.



git-svn-id: https://develop.svn.wordpress.org/trunk@23249 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Andrew Nacin 2013-01-03 06:17:47 +00:00
parent cc68dcede3
commit f4a95f061d
1 changed files with 4 additions and 2 deletions

View File

@ -59,12 +59,14 @@ function get_404_template() {
* @return string
*/
function get_archive_template() {
$post_types = get_query_var( 'post_type' );
$post_types = array_filter( (array) get_query_var( 'post_type' ) );
$templates = array();
foreach ( (array) $post_types as $post_type )
if ( count( $post_types ) == 1 ) {
$post_type = reset( $post_types );
$templates[] = "archive-{$post_type}.php";
}
$templates[] = 'archive.php';
return get_query_template( 'archive', $templates );