' . $site_logo_output . $site_title_output . $site_description_output . '
';
// Allow output to be filtered.
$output = apply_filters( 'blogsy_logo_output', $output );
// Echo or return the output.
if ( $show_logo ) {
echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
return null;
}
return $output;
}
endif;
if ( ! function_exists( 'blogsy_get_logo_img_output' ) ) :
/**
* Outputs logo image markup.
*
* @since 1.0.0
*
* @param int $logo Attachment ID of the logo image.
* @param int $retina Attachment ID of the retina logo image.
* @param int $dark_logo Attachment ID of the dark logo image.
* @param int $dark_retina_logo Attachment ID of the dark retina logo image.
* @param string $class Additional CSS class.
* @return string
*/
function blogsy_get_logo_img_output( int $logo, int $retina = 0, int $dark_logo = 0, int $dark_retina_logo = 0, string $class = '' ): string {
// Early return if no logo is set.
if ( ! $logo && ! $dark_logo ) {
return '';
}
$logo_attr = blogsy_logo_dark_logo( $logo );
$dark_logo_attr = blogsy_logo_dark_logo( $dark_logo );
// Build srcset attribute.
$srcset = '';
$srcset_dark = '';
if ( $logo && $retina && $logo_attr ) {
$retina_logo_image = wp_get_attachment_image_url( $retina, 'full' );
if ( $retina_logo_image ) {
$srcset = sprintf(
' srcset="%s 1x, %s 2x"',
esc_attr( $logo_attr['url'] ),
esc_attr( $retina_logo_image )
);
}
}
if ( $dark_logo && $dark_retina_logo && $dark_logo_attr ) {
$dark_retina_logo_image = wp_get_attachment_image_url( $dark_retina_logo, 'full' );
if ( $dark_retina_logo_image ) {
$srcset_dark = sprintf(
' srcset="%s 1x, %s 2x"',
esc_attr( $dark_logo_attr['url'] ),
esc_attr( $dark_retina_logo_image )
);
}
}
// Build the conditional dark logo image tag.
$dark_logo_img_tag = '';
if ( ! empty( $dark_logo_attr ) ) {
$dark_logo_img_tag = sprintf(
'
%s',
esc_url( $options['url'] ),
esc_attr( $options['target'] ?? '_self' ),
wp_kses_post( $image_html )
);
} else {
echo wp_kses_post( $image_html );
}
} elseif ( isset( $options['content'] ) ) {
?>
isset( $widget['values']['display_area'] )
&& in_array( 'random_post_archives', $widget['values']['display_area'], true )
)
);
if ( [] === $ad_widgets || ! isset( $ad_widgets[ $ad_to_rendered ] ) ) {
return;
}
$classes = [];
$classes[] = 'blogsy-banner-widget__' . esc_attr( $ad_widgets[ $ad_to_rendered ]['type'] );
$classes[] = 'blogsy-banner-widget';
if ( isset( $ad_widgets[ $ad_to_rendered ]['values']['visibility'] ) && $ad_widgets[ $ad_to_rendered ]['values']['visibility'] ) {
$classes[] = 'blogsy-' . esc_attr( $ad_widgets[ $ad_to_rendered ]['values']['visibility'] );
}
$classes = apply_filters( 'blogsy_ad_widget_advertisements_classes', $classes, $ad_widgets[ $ad_to_rendered ] );
$classes = trim( implode( ' ', $classes ) );
printf( '', esc_attr( $classes ) );
blogsy_ad_widget_advertisements( $ad_widgets[ $ad_to_rendered ]['values'] );
echo '
';
}
endif;
if ( ! function_exists( 'blogsy_social_links' ) ) :
/**
* The template tag for displaying social icons.
*
* @param array $args Args for wp_nav_menu function.
* @since 1.0.0
*/
function blogsy_social_links( array $args = [] ): void {
$defaults = [
'fallback_cb' => '',
'menu' => '',
'container' => 'nav',
'container_class' => 'blogsy-social-icons-widget',
'menu_class' => 'blogsy-social-icons',
'depth' => 1,
'link_before' => '
'true' ] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>