get_post_type_archive_template

The timeline below displays how wordpress function get_post_type_archive_template has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.1

/**
 * Retrieves path of post type 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 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj instanceof WP_Post_Type || !$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 4.9

/**
 * Retrieve path of post type 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 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj instanceof WP_Post_Type || !$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 4.8

/**
 * Retrieve path of post type archive template in current or parent template.
 *
 * The template hierarchy is filterable via the {@see 'archive_template_hierarchy'} hook.
 * The template path is filterable via the {@see 'archive_template'} hook.
 *
 * @since 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj instanceof WP_Post_Type || !$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 4.7

/**
 * Retrieve path of post type archive template in current or parent template.
 *
 * The template hierarchy is filterable via the {@see 'archive_template_hierarchy'} hook.
 * The template path is filterable via the {@see 'archive_template'} hook.
 *
 * @since 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 4.3

/**
 * Retrieve path of post type archive template in current or parent template.
 *
 * The template path is filterable via the dynamic {@see '$type_template'} hook,
 * e.g. 'archive_template'.
 *
 * @since 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 3.9

/**
 * Retrieve path of post type archive template in current or parent template.
 *
 * The template path is filterable via the 'archive_template' hook.
 *
 * @since 3.7.0
 *
 * @see get_archive_template()
 *
 * @return string Full path to archive template file.
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}

WordPress Version: 3.7

/**
 * Retrieve path of post type archive template in current or parent template.
 *
 * @since 3.7.0
 *
 * @return string
 */
function get_post_type_archive_template()
{
    $post_type = get_query_var('post_type');
    if (is_array($post_type)) {
        $post_type = reset($post_type);
    }
    $obj = get_post_type_object($post_type);
    if (!$obj->has_archive) {
        return '';
    }
    return get_archive_template();
}