%2$s'; if ( get_the_time( 'U', $id ) !== get_the_modified_time( 'U', $id ) ) { $time_string = ''; } $time_string = sprintf( $time_string, get_the_date( DATE_W3C, $id ), get_the_date( '', $id ), get_the_modified_date( DATE_W3C, $id ), get_the_modified_date( '', $id ) ); $year = get_the_date( 'Y' ); $month = get_the_date( 'm' ); // Wrap the time string in a link, and preface it with 'Posted on'. printf( /* translators: %s: post date */ __( 'Posted on %s', 'blog-diary' ), '' . $time_string . '' ); } endif; if ( ! function_exists( 'blog_diary_author' ) ) : /** * Prints HTML with meta information for the current post-date/time and author. */ function blog_diary_author() { if ( false === blog_diary_archive_meta_option( 'hide_author' ) ) { return; } // Get the author name; wrap it in a link. $byline = sprintf( /* translators: %s: post author */ __( 'By %s', 'blog-diary' ), '' . get_the_author() . '' ); // Finally, let's write all of this to the page. return ' ' . $byline . ''; } endif; if ( ! function_exists( 'blog_diary_single_categories' ) ) : /** * Prints HTML with meta information for the categories, */ function blog_diary_single_categories() { $options = blog_diary_get_theme_options(); // Hide category and tag text for pages. if ( 'post' === get_post_type() ) { if ( ! $options['single_post_hide_category'] ) : /* translators: used between list items, there is a space after the comma */ $categories_list = get_the_category_list(); if ( $categories_list && blog_diary_categorized_blog() ) { printf( '%1$s' . '', $categories_list ); // WPCS: XSS OK. } endif; } } endif; if ( ! function_exists( 'blog_diary_entry_footer' ) ) : /** * Prints HTML with meta information for the tags and comments. */ function blog_diary_entry_footer() { $options = blog_diary_get_theme_options(); // Hide category and tag text for pages. if ( 'post' === get_post_type() ) { if ( ! $options['single_post_hide_tags'] ) : /* translators: used between list items, there is a space after the comma */ $tags_list = get_the_tag_list( '', ', ' ); if ( $tags_list ) { printf( '' . esc_html__( 'Tags: %1$s', 'blog-diary' ) . '', $tags_list ); // WPCS: XSS OK. } endif; } edit_post_link( sprintf( /* translators: %s: Name of current post */ esc_html__( 'Edit %s', 'blog-diary' ), the_title( '"', '"', false ) ), '', '' ); } endif; /** * articles meta * @param [id] $id post id * @param [html] $authro author template */ function blog_diary_article_footer_meta( $id = '' ) { $id = ! empty( $id ) ? $id : get_the_id(); if ( 'post' !== get_post_type( $id ) ) { return; } $output = ''; if ( true === blog_diary_archive_meta_option( 'hide_category' ) ) { $categories_list = get_the_category_list( '', '', $id ); if ( $categories_list && blog_diary_categorized_blog() ) { $output .= sprintf( ' %s', $categories_list ); } } return $output; } /** * Checks to see if meta option is hide enabled in archive/blog */ function blog_diary_archive_meta_option( $option = '' ) { $options = blog_diary_get_theme_options(); if ( is_archive() || is_search() || is_home() ) : if ( true === $options[$option] ) return false; else return true; else : return true; endif; } /** * Returns true if a blog has more than 1 category. * * @return bool */ function blog_diary_categorized_blog() { if ( false === ( $all_the_cool_cats = get_transient( 'blog_diary_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( 'blog_diary_categories', $all_the_cool_cats ); } if ( $all_the_cool_cats > 1 ) { // This blog has more than 1 category so blog_diary_categorized_blog should return true. return true; } else { // This blog has only 1 category so blog_diary_categorized_blog should return false. return false; } } /** * Flush out the transients used in blog_diary_categorized_blog. */ function blog_diary_category_transient_flusher() { if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { return; } // Like, beat it. Dig? delete_transient( 'blog_diary_categories' ); } add_action( 'edit_category', 'blog_diary_category_transient_flusher' ); add_action( 'save_post', 'blog_diary_category_transient_flusher' );