Codex

Function Reference/is post type archive

Contents

Description

Checks if the query is for an archive page of a given post type(s).

Usage

<?php is_post_type_archive$post_types ); ?>

Parameters

$post_types
(array/string) (optional) Post type or array of posts types to check against.
Default: None

Return Values

(bool) 
Whether the query is for an archive page of a given post type(s).

Examples

Determine if the current page is an archive made by a custom post type and display the custom post type title:

<?php
if ( is_post_type_archive() ) {
    ?>
    <h1><?php post_type_archive_title(); ?></h1>
    <?php
}
?>

Notes

Depending on when this function is ran it may or may not be ran by nav_menu_item. Take the following code example:

<?php
function some_func( $query ){
    if ( is_post_type_archive('my_custom_post_type') ) {
         // Do stuff
    }
}
add_action('pre_get_posts','some_func');
?>

"Do stuff" may or may not be ran in the menu, depending on if the theme is using nav menus or not. The correct usage would be:

<?php
function some_func( $query ){
    if ( is_post_type_archive('my_custom_post_type') 
         && ! empty( $query->query['post_type']  == 'my_custom_post_type' ) {
         // Do stuff
    }
}
add_action('pre_get_posts','some_func');
?>

Change Log

Source File

is_post_type_archive() is located in wp-includes/query.php.

Related

Conditional Tags: comments_open(), is_404(), is_admin(), is_admin_bar_showing(), is_archive(), is_attachment(), is_author(), is_category(), is_comments_popup(), is_date(), is_day(), is_feed(), is_front_page(), is_home(), is_local_attachment(), is_multi_author, is_month(), is_new_day(), is_page(), is_page_template(), is_paged(), is_plugin_active(), is_plugin_active_for_network(), is_plugin_inactive(), is_plugin_page(), is_post_type_archive(), is_preview(), is_search(), is_single(), is_singular(), is_sticky(), is_tag(), is_tax(), is_taxonomy_hierarchical(), is_time(), is_trackback(), is_year(), in_category(), in_the_loop(), is_active_sidebar(), is_active_widget(), is_blog_installed(), is_rtl(), is_dynamic_sidebar(), is_user_logged_in(), has_excerpt(), has_post_thumbnail(), has_tag(), pings_open(), email exists(), post_type_exists(), taxonomy_exists(), term_exists(), username exists(), wp_attachment_is_image(), wp_script_is()

See also index of Function Reference and index of Template Tags.