'%1$s%2$s', 'logo_class' => 'site-logo site-branding', 'title' => '%2$s', 'title_class' => 'site-title', 'home_wrap' => '

%2$s

', 'single_wrap' => '
%2$s
', 'condition' => (is_front_page() || is_home()) && !is_page(), ); $args = wp_parse_args($args, $defaults); /** * Filters the arguments for `bozu_site_logo()`. * * @param array $args Parsed arguments. * @param array $defaults Function's default arguments. */ $args = apply_filters('bozu_site_logo_args', $args, $defaults); if ( has_custom_logo() ) { $contents = sprintf($args['logo'], $logo, esc_html($site_title)); $contents .= sprintf($args['title'], esc_url( get_home_url(null, '/') ), esc_html($site_title)); $classname = $args['logo_class']; } else { $contents = sprintf($args['title'], esc_url( get_home_url(null, '/') ), esc_html($site_title)); $classname = $args['title_class']; } $wrap = $args['condition'] ? 'home_wrap' : 'single_wrap'; // $wrap = 'home_wrap'; $html = sprintf($args[$wrap], $classname, $contents); /** * Filters the arguments for `bozu_site_logo()`. * * @param string $html Compiled html based on our arguments. * @param array $args Parsed arguments. * @param string $classname Class name based on current view, home or single. * @param string $contents HTML for site title or logo. */ $html = apply_filters('bozu_site_logo', $html, $args, $classname, $contents); if (!$echo) { return $html; } echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } endif; if( !function_exists('bozu_site_description') ): /** * Displays the site description. * * @param boolean $echo Echo or return the html. * * @return string $html The HTML to display. */ function bozu_site_description($echo = true){ $description = get_bloginfo('description'); if (!$description) { return; } $wrapper = '
%s
'; $html = sprintf($wrapper, esc_html($description)); /** * Filters the html for the site description. * * @param string $html The HTML to display. * @param string $description Site description via `bloginfo()`. * @param string $wrapper The format used in case you want to reuse it in a `sprintf()`. * @since 1.0.0 * */ $html = apply_filters('bozu_site_description', $html, $description, $wrapper); if( !$echo ){ return $html; } echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } endif; if( !function_exists('bozu_posted_on') ): /** * Prints HTML with meta information for the current post-date/time. */ function bozu_posted_on(){ $bozu_default = bozu_get_default_theme_options(); $ed_post_date = absint( get_theme_mod( 'ed_post_date',$bozu_default['ed_post_date'] ) ); if( $ed_post_date ){ $time_string = ''; if (get_the_time('U') !== get_the_modified_time('U')) { $time_string = ''; } $time_string = sprintf($time_string, esc_attr(get_the_date(DATE_W3C)), esc_html(get_the_date()), esc_attr(get_the_modified_date(DATE_W3C)), esc_html(get_the_modified_date()) ); $year = get_the_date('Y'); $month = get_the_date('m'); $day = get_the_date('d'); $link = get_day_link($year, $month, $day); $posted_on = '' . $time_string . ''; echo '
'; echo '
'; echo ''; echo '' . $posted_on . ''; // WPCS: XSS OK. echo '
'; echo '
'; } } endif; if( !function_exists('bozu_posted_by') ) : /** * Prints HTML with meta information for the current author. */ function bozu_posted_by(){ $bozu_default = bozu_get_default_theme_options(); $ed_post_author = absint( get_theme_mod( 'ed_post_author',$bozu_default['ed_post_author'] ) ); if( $ed_post_author ){ echo '
'; echo '
'; echo ''; $byline = '' . esc_html( get_the_author() ) . ''; echo ''; // WPCS: XSS OK. echo '
'; echo '
'; } } endif; if( !function_exists('bozu_entry_footer') ): /** * Prints HTML with meta information for the categories, tags and comments. */ function bozu_entry_footer( $cats = true, $tags = true, $edits = true ){ $bozu_default = bozu_get_default_theme_options(); $ed_post_category = absint( get_theme_mod( 'ed_post_category',$bozu_default['ed_post_category'] ) ); $ed_post_tags = absint( get_theme_mod( 'ed_post_tags',$bozu_default['ed_post_tags'] ) ); // Hide category and tag text for pages. if( 'post' === get_post_type() ){ if( $cats && $ed_post_category ){ /* translators: used between list items, there is a space after the comma */ $categories = get_the_category(); echo '
'; echo '
'; /* translators: 1: list of categories. */ echo ''; foreach( $categories as $category ){ $cat_name = $category->name; $cat_slug = $category->slug; $cat_url = get_category_link( $category->term_id ); ?> '; echo '
'; echo '
'; } if( $tags && $ed_post_tags ){ /* translators: used between list items, there is a space after the comma */ $tags_list = get_the_tag_list('', esc_html_x(', ', 'list item separator', 'bozu')); if( $tags_list ){ echo '
'; echo '
'; echo ''; echo ''; /* translators: 1: list of tags. */ echo ''; echo wp_kses_post($tags_list) . ''; // WPCS: XSS OK. echo '
'; echo '
'; } } if( $edits ){ edit_post_link( sprintf( wp_kses( /* translators: %s: Name of current post. Only visible to screen readers */ __('Edit %s', 'bozu'), array( 'span' => array( 'class' => array(), ), ) ), get_the_title() ), '', '' ); } } } endif; if( !function_exists('bozu_is_comment_by_post_author') ): /** * Comments */ /** * Check if the specified comment is written by the author of the post commented on. * * @param object $comment Comment data. * * @return bool */ function bozu_is_comment_by_post_author( $comment = null ){ if( is_object($comment) && $comment->user_id > 0 ){ $user = get_userdata($comment->user_id); $post = get_post($comment->comment_post_ID); if (!empty($user) && !empty($post)) { return $comment->user_id === $post->post_author; } } return false; } endif; add_filter( 'get_the_archive_title','bozu_archive_title_callback'); if( !function_exists('bozu_archive_title_callback') ) : /** * Bozu Archive title filter */ function bozu_archive_title_callback($comment = null){ $title = ''; if ( is_category() ) { $title = single_cat_title( '', false ); } elseif ( is_tag() ) { $title = single_tag_title( '', false ); } elseif ( is_author() ) { $title = get_the_author(); } elseif ( is_year() ) { $title = get_the_date( 'Y' ); } elseif ( is_month() ) { $title = get_the_date( 'F Y' ); } elseif ( is_day() ) { $title = get_the_date( 'F j, Y' ); } elseif ( is_tax( 'post_format' ) ) { if ( is_tax( 'post_format', 'post-format-aside' ) ) { $title = esc_html__( 'Asides','bozu' ); } elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) { $title = esc_html__( 'Galleries', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-image' ) ) { $title = esc_html__( 'Images', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-video' ) ) { $title = esc_html__( 'Videos', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-quote' ) ) { $title = esc_html__( 'Quotes', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-link' ) ) { $title = esc_html__( 'Links', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-status' ) ) { $title = esc_html__( 'Statuses', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-audio' ) ) { $title = esc_html__( 'Audio', 'bozu' ); } elseif ( is_tax( 'post_format', 'post-format-chat' ) ) { $title = esc_html__( 'Chats', 'bozu' ); } } elseif ( is_post_type_archive() ) { $title = post_type_archive_title( '', false ); } elseif ( is_tax() ) { $title = single_term_title( '', false ); } return $title; } endif; if( !function_exists('bozu_archive_title') ) : /** * Bozu Breadcrumb */ function bozu_archive_title($comment = null){ if( is_search() ){ ?>
'; breadcrumb_trail(); echo ''; } endif;