) ); } elseif ( is_day() ) { /* translators: Daily archive title. %s: Date. */ $title = sprintf( __( 'Day: %s' ), get_the_date( _x( 'F j, Y', 'daily archives date format' ) ) ); } elseif ( is_tax( 'post_format' ) ) { if ( is_tax( 'post_format', 'post-format-aside' ) ) { $title = _x( 'Asides', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) { $title = _x( 'Galleries', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-image' ) ) { $title = _x( 'Images', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-video' ) ) { $title = _x( 'Videos', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-quote' ) ) { $title = _x( 'Quotes', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-link' ) ) { $title = _x( 'Links', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-status' ) ) { $title = _x( 'Statuses', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-audio' ) ) { $title = _x( 'Audio', 'post format archive title' ); } elseif ( is_tax( 'post_format', 'post-format-chat' ) ) { $title = _x( 'Chats', 'post format archive title' ); } } elseif ( is_post_type_archive() ) { /* translators: Post type archive title. %s: Post type name. */ $title = sprintf( __( 'Archives: %s' ), post_type_archive_title( '', false ) ); } elseif ( is_tax() ) { $queried_object = get_queried_object(); if ( $queried_object ) { $tax = get_taxonomy( $queried_object->taxonomy ); /* translators: Taxonomy term archive title. 1: Taxonomy singular name, 2: Current taxonomy term. */ $title = sprintf( __( '%1$s: %2$s' ), $tax->labels->singular_name, single_term_title( '', false ) ); } } /** * Filters the archive title. * * @since 4.1.0 * * @param string $title Archive title to be displayed. */ return apply_filters( 'get_the_archive_title', $title ); } /** * Display category, tag, term, or author description. * * @since 4.1.0 * * @see get_the_archive_description() * * @param string $before Optional. Content to prepend to the description. Default empty. * @param string $after Optional. Content to append to the description. Default empty. */ function the_archive_description( $before = '', $after = '' ) { $description = get_the_archive_description(); if ( $description ) { echo $before . $description . $after; } } /** * Retrieves the description for an author, post type, or term archive. * * @since 4.1.0 * @since 4.7.0 Added support for author archives. * @since 4.9.0 Added support for post type archives. * * @see term_description() * * @return string Archive description. */ function get_the_archive_description() { if ( is_author() ) { $description = get_the_author_meta( 'description' ); } elseif ( is_post_type_archive() ) { $description = get_the_post_type_description(); } else { $description = term_description(); } /** * Filters the archive description. * * @since 4.1.0 * * @param string $description Archive description to be displayed. */ return apply_filters( 'get_the_archive_description', $description ); } /** * Retrieves the description for a post type archive. * * @since 4.9.0 * * @return string The post type description. */ function get_the_post_type_description() { $post_type = get_query_var( 'post_type' ); if ( is_array( $post_type ) ) { $post_type = reset( $post_type ); } $post_type_obj = get_post_type_object( $post_type ); // Check if a description is set. if ( isset( $post_type_obj->description ) ) { $description = $post_type_obj->description; } else { $description = ''; } /** * Filters the description for a post type archive. * * @since 4.9.0 * * @param string $description The post type description. * @param WP_Post_Type $post_type_obj The post type object. */ return apply_filters( 'get_the_post_type_description', $description, $post_type_obj ); } /** * Retrieve archive link content based on predefined or custom code. * * The format can be one of four styles. The 'link' for head element, 'option' * for use in the select element, 'html' for use in list (either ol or ul HTML * elements). Custom content is also supported using the before and after * parameters. * * The 'link' format uses the `` HTML element with the **archives** * relationship. The before and after parameters are not used. The text * parameter is used to describe the link. * * The 'option' format uses the option HTML element for use in select element. * The value is the url parameter and the before and after parameters are used * between the text description. * * The 'html' format, which is the default, uses the li HTML element for use in * the list HTML elements. The before parameter is before the link and the after * parameter is after the closing link. * * The custom format uses the before parameter before the link ('a' HTML * element) and the after parameter after the closing link tag. If the above * three values for the format are not used, then custom format is assumed. * * @since 1.0.0 * @since 5.2.0 Added the `$selected` parameter. * * @param string $url URL to archive. * @param string $text Archive text description. * @param string $format Optional, default is 'html'. Can be 'link', 'option', 'html', or custom. * @param string $before Optional. Content to prepend to the description. Default empty. * @param string $after Optional. Content to append to the description. Default empty. * @param bool $selected Optional. Set to true if the current page is the selected archive page. * @return string HTML link content for archive. */ function get_archives_link( $url, $text, $format = 'html', $before = '', $after = '', $selected = false ) { $text = wptexturize( $text ); $url = esc_url( $url ); $aria_current = $selected ? ' aria-current="page"' : ''; if ( 'link' === $format ) { $link_html = "\t\n"; } elseif ( 'option' === $format ) { $selected_attr = $selected ? " selected='selected'" : ''; $link_html = "\t\n"; } elseif ( 'html' === $format ) { $link_html = "\t
  • $before$text$after
  • \n"; } else { // Custom. $link_html = "\t$before$text$after\n"; } /** * Filters the archive link content. * * @since 2.6.0 * @since 4.5.0 Added the `$url`, `$text`, `$format`, `$before`, and `$after` parameters. * @since 5.2.0 Added the `$selected` parameter. * * @param string $link_html The archive HTML link content. * @param string $url URL to archive. * @param string $text Archive text description. * @param string $format Link format. Can be 'link', 'option', 'html', or custom. * @param string $before Content to prepend to the description. * @param string $after Content to append to the description. * @param bool $selected True if the current page is the selected archive. */ return apply_filters( 'get_archives_link', $link_html, $url, $text, $format, $before, $after, $selected ); } /** * Display archive links based on type and format. * * @since 1.2.0 * @since 4.4.0 The `$post_type` argument was added. * @since 5.2.0 The `$year`, `$monthnum`, `$day`, and `$w` arguments were added. * * @see get_archives_link() * * @global wpdb $wpdb WordPress database abstraction object. * @global WP_Locale $wp_locale WordPress date and time locale object. * * @param string|array $args { * Default archive links arguments. Optional. * * @type string $type Type of archive to retrieve. Accepts 'daily', 'weekly', 'monthly', * 'yearly', 'postbypost', or 'alpha'. Both 'postbypost' and 'alpha' * display the same archive link list as well as post titles instead * of displaying dates. The difference between the two is that 'alpha' * will order by post title and 'postbypost' will order by post date. * Default 'monthly'. * @type string|int $limit Number of links to limit the query to. Default empty (no limit). * @type string $format Format each link should take using the $before and $after args. * Accepts 'link' (`` tag), 'option' (`