'%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 `primebulletin_site_logo()`.
*
* @param array $args Parsed arguments.
* @param array $defaults Function's default arguments.
*/
$args = apply_filters('primebulletin_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';
$html = sprintf($args[$wrap], $classname, $contents);
/**
* Filters the arguments for `primebulletin_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('primebulletin_site_logo', $html, $args, $classname, $contents);
if (!$echo) {
return $html;
}
echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}
endif;
if( !function_exists('primebulletin_site_description') ):
/**
* Displays the site description.
*
* @param boolean $echo Echo or return the html.
*
* @return string $html The HTML to display.
*/
function primebulletin_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('primebulletin_site_description', $html, $description, $wrapper);
if (!$echo) {
return $html;
}
echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}
endif;
if( !function_exists('primebulletin_posted_on') ):
/**
* Prints HTML with meta information for the current post-date/time.
*/
function primebulletin_posted_on($icon = false){
$primebulletin_default = primebulletin_get_default_theme_options();
$post_date_format = get_theme_mod( 'post_date_format',$primebulletin_default['post_date_format'] );
$ed_post_date = absint( get_theme_mod( 'ed_post_date',$primebulletin_default['ed_post_date'] ) );
if( $ed_post_date ){
$time_string = '%2$s ';
if (get_the_time('U') !== get_the_modified_time('U')) {
$time_string = '%2$s %4$s ';
}
$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);
if( $post_date_format == 'time-ago' ){
$time_string = human_time_diff( get_the_date('U'), current_time('timestamp') ).esc_html__(' Ago','primebulletin');
$posted_on = '' . $time_string . ' ';
}else{
$posted_on = '' . $time_string . ' ';
}
echo '';
if( $icon ){
echo ' ';
primebulletin_the_theme_svg('calendar');
echo ' ';
}
echo '' . $posted_on . ' '; // WPCS: XSS OK.
echo '
';
}
}
endif;
if( !function_exists('primebulletin_posted_by') ) :
/**
* Prints HTML with meta information for the current author.
*/
function primebulletin_posted_by(){
echo '';
echo '
';
echo wp_kses_post( get_avatar( get_the_author_meta( 'ID' ) ) );
echo '
';
echo '
';
echo '';
}
endif;
if( !function_exists('primebulletin_entry_footer') ):
/**
* Prints HTML with meta information for the categories, tags and comments.
*/
function primebulletin_entry_footer( $cats = true, $tags = true, $edits = true, $text = true, $icon = true ){
$primebulletin_default = primebulletin_get_default_theme_options();
$ed_post_category = absint( get_theme_mod( 'ed_post_category',$primebulletin_default['ed_post_category'] ) );
$ed_post_tags = absint( get_theme_mod( 'ed_post_tags',$primebulletin_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();
if ($categories) {
echo '';
if( $icon ){
echo '
';
primebulletin_the_theme_svg('folder');
echo ' ';
}
if( $text ){
echo '
';
esc_html_e('In', 'primebulletin');
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 );
$twp_term_color = get_term_meta( $category->term_id, 'primebulletin-cat-color', true ); ?>
style="background: " href="" rel="category tag">
';
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', 'primebulletin'));
if( $tags_list ){
echo '';
echo ' ';
primebulletin_the_theme_svg('tag');
echo ' ';
echo '';
esc_html_e('In', 'primebulletin');
echo ' ';
/* translators: 1: list of tags. */
echo '';
echo wp_kses_post($tags_list) . ' '; // WPCS: XSS OK.
echo '
';
}
}
if( $edits ){
edit_post_link(
sprintf(
wp_kses(
/* translators: %s: Name of current post. Only visible to screen readers */
__('Edit %s ', 'primebulletin'),
array(
'span' => array(
'class' => array(),
),
)
),
get_the_title()
),
'',
'
'
);
}
}
}
endif;
if ( !function_exists('primebulletin_post_thumbnail') ) :
/**
* Displays an optional post thumbnail.
*
* Wraps the post thumbnail in an anchor element on index views, or a div
* element when on single views.
*/
function primebulletin_post_thumbnail($image_size = 'full'){
if( post_password_required() || is_attachment() || !has_post_thumbnail() ){ return; }
if ( is_singular() ) : ?>
the_title_attribute(array(
'echo' => false,
)),
)); ?>
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;
if( !function_exists('primebulletin_breadcrumb_with_title_block') ) :
/**
* PrimeBulletin Breadcrumb
*/
function primebulletin_breadcrumb_with_title_block($comment = null){
$primebulletin_default = primebulletin_get_default_theme_options();
$ed_breadcrumb = absint( get_theme_mod( 'ed_breadcrumb',$primebulletin_default['ed_breadcrumb'] ) );
if ($ed_breadcrumb) {
echo '';
breadcrumb_trail();
echo '
';
}
if( is_search() ){ ?>