1 && get_option( 'page_comments' ) ) : ?> element containing the post publication/modification date. */ function independent_publisher_posted_time() { $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() ) ); return $time_string; } endif; if ( ! function_exists( 'independent_publisher_entry_header' ) ) : /** * Displays the HTML for.entry-header on posts and pages. */ function independent_publisher_entry_header() { // Formats displayed without the post title. $ignored_formats = array( 'aside', 'quote', 'status' ); if ( ! is_single() ) { // Hide image format post title on non single post views. $ignored_formats[] = 'image'; } // Show sticky post label on archive views, when on the first page, and when no featured image is set. if ( is_sticky() && ! is_singular() && ! is_paged() && ! has_post_thumbnail() ) { printf( '%s', esc_html__( 'Featured', 'independent-publisher' ) ); } // Conditionally display the entry header. $title = get_the_title(); if ( ! empty( $title ) && ! in_array( get_post_format(), $ignored_formats ) ) : ?>
', '' ); else : the_title( sprintf( '

', esc_url( get_permalink() ) ), '

' ); endif; ?>
%s', get_post_format(), esc_url( get_post_format_link( get_post_format() ) ), get_post_format_string( get_post_format() ) ); } ?>
' . esc_html( get_the_author() ) . '' ); /* translators: used between list items, there is a space after the comma */ $categories_list = get_the_category_list( esc_html__( ', ', 'independent-publisher' ) ); if ( $categories_list && independent_publisher_categorized_blog() ) { printf( '' . esc_html__( 'in %1$s', 'independent-publisher' ) . '', $categories_list ); // WPCS: XSS OK. } if ( is_single() ) { /* translators: used between list items, there is a space after the comma */ the_tags( sprintf( '%s ', esc_html__( 'Tagged', 'independent-publisher' ) ), esc_html__( ', ', 'independent-publisher' ), '' ); } } // Display post format archive link. if ( '' != get_post_format() ) { printf( '%s', esc_url( get_post_format_link( get_post_format() ) ), get_post_format_string( get_post_format() ) ); } // Display posted date for singular posts. if ( is_singular() ) { echo independent_publisher_posted_time(); } else { printf( '%s', esc_url( get_permalink() ), independent_publisher_posted_time() ); } // Show word count on standard post formats and pages. if ( independent_publisher_show_word_count() ) { printf( '%s', sprintf( esc_html_x( '%s Words', 'word count', 'independent-publisher' ), independent_publisher_word_count() ) ); } // Comments link if ( ! is_single() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) { echo ''; comments_popup_link( esc_html__( 'Leave a comment', 'independent-publisher' ), esc_html__( '1 Comment', 'independent-publisher' ), esc_html__( '% Comments', 'independent-publisher' ) ); echo ''; } // Edit post link edit_post_link( esc_html__( 'Edit', 'independent-publisher' ), '', '' ); } endif; if ( ! function_exists( 'independent_publisher_post_thumbnail' ) ) : /** * Displays the featured image of the post. */ function independent_publisher_post_thumbnail() { if ( post_password_required() || is_attachment() || ! has_post_thumbnail() ) { return; } if ( is_singular() ) { the_post_thumbnail( 'post-thumbnail', array( 'alt' => get_the_title() ) ); } else { printf( '
', esc_url( get_permalink() ) ); if ( is_sticky() && ! is_paged() ) { printf( '%s', esc_html__( 'Featured', 'independent-publisher' ) ); } the_post_thumbnail( 'post-thumbnail', array( 'alt' => get_the_title() ) ); echo '
'; } if ( 'image' === get_post_format() && ! is_single() ) { the_title( '

', '

' ); } } endif; if ( ! function_exists( 'independent_publisher_excerpt_more' ) && ! is_admin() ) : /** * Replaces "[...]" (appended to automatically generated excerpts) with ... and a 'Continue reading' link. * * @return string 'Continue reading' link prepended with an ellipsis. */ function independent_publisher_excerpt_more( $more ) { $link = sprintf( '%2$s', esc_url( get_permalink( get_the_ID() ) ), /* translators: %s: Name of current post */ sprintf( wp_kses( __( 'Continue reading %s ', 'independent-publisher' ), array( 'span' => array( 'class' => array() ) ) ), '' . get_the_title( get_the_ID() ) . '' ) ); return ' … ' . $link; } add_filter( 'excerpt_more', 'independent_publisher_excerpt_more' ); endif; /** * Returns true if a blog has more than 1 category. * * @return bool */ function independent_publisher_categorized_blog() { if ( false === ( $all_the_cool_cats = get_transient( 'independent_publisher_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 = is_countable( $all_the_cool_cats ) ? count( $all_the_cool_cats ) : 0; set_transient( 'independent_publisher_categories', $all_the_cool_cats ); } if ( $all_the_cool_cats > 1 ) { // This blog has more than 1 category so independent_publisher_categorized_blog should return true. return true; } else { // This blog has only 1 category so independent_publisher_categorized_blog should return false. return false; } } /** * Flush out the transients used in independent_publisher_categorized_blog. */ function independent_publisher_category_transient_flusher() { if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { return; } // Like, beat it. Dig? delete_transient( 'independent_publisher_categories' ); } add_action( 'edit_category', 'independent_publisher_category_transient_flusher' ); add_action( 'save_post', 'independent_publisher_category_transient_flusher' );