WordPress Version: 6.3
/**
* Retrieves path of archive template in current or parent template.
*
* The template hierarchy and template path are filterable via the {@see '$type_template_hierarchy'}
* and {@see '$type_template'} dynamic hooks, where `$type` is 'archive'.
*
* @since 1.5.0
*
* @see get_query_template()
*
* @return string Full path to archive template file.
*/
function get_archive_template()
{
$post_types = array_filter((array) get_query_var('post_type'));
$templates = array();
if (count($post_types) === 1) {
$post_type = reset($post_types);
$templates[] = "archive-{$post_type}.php";
}
$templates[] = 'archive.php';
return get_query_template('archive', $templates);
}