From 336d718bfc0e1e3276cc426044e611025f39be5d Mon Sep 17 00:00:00 2001 From: Drew Jaynes Date: Sat, 1 Jul 2017 05:14:18 +0000 Subject: [PATCH] General: Add support for the post type archive description to `get_the_archive_description()`, and thereby also `the_archive_description()`. Props henrywright. Fixes #38487. git-svn-id: https://develop.svn.wordpress.org/trunk@40976 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/general-template.php | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/wp-includes/general-template.php b/src/wp-includes/general-template.php index 3b186757f1..e4516328bf 100644 --- a/src/wp-includes/general-template.php +++ b/src/wp-includes/general-template.php @@ -1540,18 +1540,34 @@ function the_archive_description( $before = '', $after = '' ) { } /** - * Retrieve category, tag, term, or author description. + * 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() { + $description = ''; + if ( is_author() ) { $description = get_the_author_meta( 'description' ); + } elseif ( is_post_type_archive() ) { + $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 = term_description(); }