diff --git a/inc/template-tags.php b/inc/template-tags.php index 3d0141e..7b3a0d2 100644 --- a/inc/template-tags.php +++ b/inc/template-tags.php @@ -7,105 +7,113 @@ * @package understrap */ -if ( ! function_exists( 'understrap_posted_on' ) ) : + /** * Prints HTML with meta information for the current post-date/time and author. */ -function understrap_posted_on() { - $time_string = ''; - if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { - $time_string = ''; +if ( ! function_exists ( 'understrap_posted_on' ) ) { + function understrap_posted_on() { + $time_string = ''; + if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { + $time_string = ''; + } + $time_string = sprintf( $time_string, + esc_attr( get_the_date( 'c' ) ), + esc_html( get_the_date() ), + esc_attr( get_the_modified_date( 'c' ) ), + esc_html( get_the_modified_date() ) + ); + $posted_on = sprintf( + esc_html_x( 'Posted on %s', 'post date', 'understrap' ), + '' . $time_string . '' + ); + $byline = sprintf( + esc_html_x( 'by %s', 'post author', 'understrap' ), + '' . esc_html( get_the_author() ) . '' + ); + echo '' . $posted_on . ' ' . $byline . ''; // WPCS: XSS OK. } - $time_string = sprintf( $time_string, - esc_attr( get_the_date( 'c' ) ), - esc_html( get_the_date() ), - esc_attr( get_the_modified_date( 'c' ) ), - esc_html( get_the_modified_date() ) - ); - $posted_on = sprintf( - esc_html_x( 'Posted on %s', 'post date', 'understrap' ), - '' . $time_string . '' - ); - $byline = sprintf( - esc_html_x( 'by %s', 'post author', 'understrap' ), - '' . esc_html( get_the_author() ) . '' - ); - echo '' . $posted_on . ' ' . $byline . ''; // WPCS: XSS OK. } -endif; -if ( ! function_exists( 'understrap_entry_footer' ) ) : + /** * Prints HTML with meta information for the categories, tags and comments. */ -function understrap_entry_footer() { - // Hide category and tag text for pages. - if ( 'post' === get_post_type() ) { - /* translators: used between list items, there is a space after the comma */ - $categories_list = get_the_category_list( esc_html__( ', ', 'understrap' ) ); - if ( $categories_list && understrap_categorized_blog() ) { - printf( '' . esc_html__( 'Posted in %1$s', 'understrap' ) . '', $categories_list ); // WPCS: XSS OK. +if ( ! function_exists ( 'understrap_entry_footer' ) ) { + function understrap_entry_footer() { + // Hide category and tag text for pages. + if ( 'post' === get_post_type() ) { + /* translators: used between list items, there is a space after the comma */ + $categories_list = get_the_category_list( esc_html__( ', ', 'understrap' ) ); + if ( $categories_list && understrap_categorized_blog() ) { + printf( '' . esc_html__( 'Posted in %1$s', 'understrap' ) . '', $categories_list ); // WPCS: XSS OK. + } + /* translators: used between list items, there is a space after the comma */ + $tags_list = get_the_tag_list( '', esc_html__( ', ', 'understrap' ) ); + if ( $tags_list ) { + printf( '' . esc_html__( 'Tagged %1$s', 'understrap' ) . '', $tags_list ); // WPCS: XSS OK. + } } - /* translators: used between list items, there is a space after the comma */ - $tags_list = get_the_tag_list( '', esc_html__( ', ', 'understrap' ) ); - if ( $tags_list ) { - printf( '' . esc_html__( 'Tagged %1$s', 'understrap' ) . '', $tags_list ); // WPCS: XSS OK. + if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) { + echo ''; + comments_popup_link( esc_html__( 'Leave a comment', 'understrap' ), esc_html__( '1 Comment', 'understrap' ), esc_html__( '% Comments', 'understrap' ) ); + echo ''; } + edit_post_link( + sprintf( + /* translators: %s: Name of current post */ + esc_html__( 'Edit %s', 'understrap' ), + the_title( '"', '"', false ) + ), + '', + '' + ); } - if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) { - echo ''; - comments_popup_link( esc_html__( 'Leave a comment', 'understrap' ), esc_html__( '1 Comment', 'understrap' ), esc_html__( '% Comments', 'understrap' ) ); - echo ''; - } - edit_post_link( - sprintf( - /* translators: %s: Name of current post */ - esc_html__( 'Edit %s', 'understrap' ), - the_title( '"', '"', false ) - ), - '', - '' - ); } -endif; + /** * Returns true if a blog has more than 1 category. * * @return bool */ -function understrap_categorized_blog() { - if ( false === ( $all_the_cool_cats = get_transient( 'understrap_categories' ) ) ) { - // Create an array of all the categories that are attached to posts. - $all_the_cool_cats = get_categories( array( - 'fields' => 'ids', - 'hide_empty' => 1, - // We only need to know if there is more than one category. - 'number' => 2, - ) ); - // Count the number of categories that are attached to the posts. - $all_the_cool_cats = count( $all_the_cool_cats ); - set_transient( 'understrap_categories', $all_the_cool_cats ); - } - if ( $all_the_cool_cats > 1 ) { - // This blog has more than 1 category so components_categorized_blog should return true. - return true; - } else { - // This blog has only 1 category so components_categorized_blog should return false. - return false; +if ( ! function_exists ( 'understrap_categorized_blog' ) ) { + function understrap_categorized_blog() { + if ( false === ( $all_the_cool_cats = get_transient( 'understrap_categories' ) ) ) { + // Create an array of all the categories that are attached to posts. + $all_the_cool_cats = get_categories( array( + 'fields' => 'ids', + 'hide_empty' => 1, + // We only need to know if there is more than one category. + 'number' => 2, + ) ); + // Count the number of categories that are attached to the posts. + $all_the_cool_cats = count( $all_the_cool_cats ); + set_transient( 'understrap_categories', $all_the_cool_cats ); + } + if ( $all_the_cool_cats > 1 ) { + // This blog has more than 1 category so components_categorized_blog should return true. + return true; + } else { + // This blog has only 1 category so components_categorized_blog should return false. + return false; + } } } + /** * Flush out the transients used in understrap_categorized_blog. */ -function understrap_category_transient_flusher() { - if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { - return; - } - // Like, beat it. Dig? - delete_transient( 'understrap_categories' ); -} add_action( 'edit_category', 'understrap_category_transient_flusher' ); add_action( 'save_post', 'understrap_category_transient_flusher' ); +if ( ! function_exists ( 'understrap_category_transient_flusher' ) ) { + function understrap_category_transient_flusher() { + if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { + return; + } + // Like, beat it. Dig? + delete_transient( 'understrap_categories' ); + } +} \ No newline at end of file