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: http://core.svn.wordpress.org/trunk@23249 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Andrew Nacin 2013-01-03 06:17:47 +00:00
parent 781ab16abe
commit ba3036ed75

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 );