Skip to content

Commit

Permalink
Banner image handling for grid; author avatar hide filter; various st…
Browse files Browse the repository at this point in the history
…yle improvements
  • Loading branch information
kimcoleman committed Apr 8, 2022
1 parent 04a6d5e commit 27fc8c8
Show file tree
Hide file tree
Showing 6 changed files with 143 additions and 113 deletions.
8 changes: 5 additions & 3 deletions components/post/content-grid.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,11 @@

<article id="post-<?php the_ID(); ?>" <?php post_class( ); ?>>
<a class="post-thumbnail-link" href="<?php echo esc_url( get_permalink() ); ?>">
<?php
if ( has_post_thumbnail() && ! empty( get_the_post_thumbnail() ) ) {
the_post_thumbnail( 'large', array( 'class' => 'aligncenter' ) );
<?php
$attachment_id = get_post_thumbnail_id( get_the_ID() );
$memberlite_get_banner_image = memberlite_get_banner_image( $attachment_id, 'large', '', array( 'class' => 'aligncenter' ), get_the_ID() );
if ( ! empty( $memberlite_get_banner_image ) ) {
echo $memberlite_get_banner_image;
} else { ?>
<div class="post-thumbnail-empty"><i class="fas fa-file-alt"></i></div>
<?php }
Expand Down
60 changes: 30 additions & 30 deletions components/post/entry-header.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,40 +9,40 @@
<?php
global $memberlite_defaults;

if ( memberlite_should_show_banner_image() ) {
$memberlite_get_banner_image_src = memberlite_get_banner_image_src( $post->ID, 'banner' );
}
$content_archives = get_theme_mod( 'content_archives', $memberlite_defaults['content_archives'] );
if ( $content_archives != 'grid' || is_search() ) {
if ( memberlite_should_show_banner_image() ) {
$memberlite_get_banner_image_src = memberlite_get_banner_image_src( $post->ID, 'banner' );
}

if ( ! empty( $memberlite_get_banner_image_src ) ) {
?>
<div class="entry-banner" style="background-image: url('<?php echo esc_attr( $memberlite_get_banner_image_src[0] ); ?>'); ">
<?php } ?>
if ( ! empty( $memberlite_get_banner_image_src ) ) { ?>
<div class="entry-banner" style="background-image: url('<?php echo esc_attr( $memberlite_get_banner_image_src[0] ); ?>'); ">
<?php } ?>

<?php
$memberlite_loop_images = get_theme_mod( 'memberlite_loop_images', $memberlite_defaults['memberlite_loop_images'] );
if ( $memberlite_loop_images === 'show_thumbnail' ) {
the_post_thumbnail(
'thumbnail',
array(
'class' => 'alignright',
)
);
}
?>

<?php
$memberlite_loop_images = get_theme_mod( 'memberlite_loop_images', $memberlite_defaults['memberlite_loop_images'] );
if ( $memberlite_loop_images === 'show_thumbnail' ) {
the_post_thumbnail(
'thumbnail',
array(
'class' => 'alignright',
)
);
}
?>
<?php } ?>

<header class="entry-header">
<?php if ( 'post' == get_post_type() && ! is_search() ) : ?>
<?php
$memberlite_avatar_size = apply_filters( 'memberlite_avatar_size', 80 );
?>
<div class="post_author_avatar"><?php echo get_avatar( get_the_author_meta( 'ID' ), $memberlite_avatar_size, '', get_the_author_meta( 'display_name' ) ); ?></div>
<?php endif; ?>
<?php the_title( sprintf( '<h1 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h1>' ); ?>
<?php if ( 'post' == get_post_type() ) : ?>
<div class="entry-meta">
<?php echo Memberlite_Customize::sanitize_text_with_links( memberlite_get_entry_meta( $post, 'before' ) ); ?>
</div><!-- .entry-meta -->
<?php endif; ?>
<?php echo memberlite_get_author_avatar( $post->post_author ); ?>
<div class="entry-header-content">
<?php the_title( sprintf( '<h1 class="entry-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h1>' ); ?>
<?php if ( 'post' == get_post_type() ) : ?>
<div class="entry-meta">
<?php echo Memberlite_Customize::sanitize_text_with_links( memberlite_get_entry_meta( $post, 'before' ) ); ?>
</div><!-- .entry-meta -->
<?php endif; ?>
</div> <!-- .entry-header-content -->
</header><!-- .entry-header -->

<?php if ( ! empty( $memberlite_get_banner_image_src ) ) { ?>
Expand Down
54 changes: 38 additions & 16 deletions inc/extras.php
Original file line number Diff line number Diff line change
Expand Up @@ -443,23 +443,22 @@ function memberlite_page_title( $echo = true ) {
?>
</h1>
<?php
} elseif ( is_singular( 'post' ) ) {
$author = get_userdata( $post->post_author );
$memberlite_avatar_size = apply_filters( 'memberlite_avatar_size', 80 );
?>
} elseif ( is_singular( 'post' ) ) { ?>
<div class="masthead-post-byline">
<div class="post_author_avatar"><?php echo get_avatar( $author->ID, $memberlite_avatar_size, '', $author->display_name ); ?></div>
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
<?php
$memberlite_get_entry_meta_before = memberlite_get_entry_meta( $post, 'before' );
if ( ! empty( $memberlite_get_entry_meta_before ) ) {
<?php echo memberlite_get_author_avatar( $post->post_author ); ?>
<div class="entry-header-content">
<?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
<?php
$memberlite_get_entry_meta_before = memberlite_get_entry_meta( $post, 'before' );
if ( ! empty( $memberlite_get_entry_meta_before ) ) {
?>
<p class="entry-meta">
<?php echo Memberlite_Customize::sanitize_text_with_links( memberlite_get_entry_meta( $post, 'before' ) ); ?>
</p><!-- .entry-meta -->
<?php
}
?>
<p class="entry-meta">
<?php echo Memberlite_Customize::sanitize_text_with_links( memberlite_get_entry_meta( $post, 'before' ) ); ?>
</p><!-- .entry-meta -->
<?php
}
?>
</div> <!-- .entry-header-content -->
</div>
<?php
} elseif ( is_home() ) {
Expand Down Expand Up @@ -853,6 +852,29 @@ function memberlite_should_show_banner_image( $post_id = null ) {
return $r;
}

/**
* Get the post thumbnail image src and allow filtering.
* Used to swap in the banner for loop/single posts with Memberlite Elements.
*/
function memberlite_get_banner_image( $attachment_id, $size = 'banner', $icon = false, $attr = '', $post_id ) {
// default to global post
if ( empty( $attachment_id ) ) {
global $post;
$post_id = $post->ID;
$attachment_id = get_post_thumbnail_id( $post_id );
}

$memberlite_banner_image = wp_get_attachment_image( $attachment_id, $size, $icon, $attr );

$memberlite_banner_image = apply_filters( 'memberlite_get_banner_image', $memberlite_banner_image, $attachment_id, $size, $icon, $attr, $post_id );

return $memberlite_banner_image;
}

/**
* Get the post thumbnail image src and allow filtering.
* Used to swap in the banner for loop/single posts with Memberlite Elements.
*/
function memberlite_get_banner_image_src( $post_id = null, $size = 'banner' ) {
// default to global post
if ( empty( $post_id ) ) {
Expand All @@ -862,7 +884,7 @@ function memberlite_get_banner_image_src( $post_id = null, $size = 'banner' ) {

$memberlite_banner_image_src = wp_get_attachment_image_src( get_post_thumbnail_id( $post_id ), $size );

$memberlite_banner_image_src = apply_filters( 'memberlite_banner_image_src', $memberlite_banner_image_src, $size );
$memberlite_banner_image_src = apply_filters( 'memberlite_banner_image_src', $memberlite_banner_image_src, $size, $post_id );

return $memberlite_banner_image_src;
}
Expand Down
40 changes: 40 additions & 0 deletions inc/template-tags.php
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,46 @@ function memberlite_get_entry_meta( $post = null, $location = 'before' ) {
return $meta;
}


/**
* Function to return the author avatar for display on posts.
*
*/
function memberlite_get_author_avatar( $author_id ) {
/**
* Filter to hide avatars in the post entry header.
*
* @param $memberlite_show_author_avatar mixed Show avatars in the header for specific post types or hide everywhere.
*
* @return $memberlite_show_author_avatar mixed The post types or a bool value to show avatars.
*/
$memberlite_show_author_avatar = apply_filters( 'memberlite_show_author_avatar', array( 'post' ) );

// Bail if false.
if ( empty( $memberlite_show_author_avatar ) ) {
return;
}

// Show avatars if always set or for a specific post type.
if ( ! empty( $memberlite_show_author_avatar ) ) {
if ( is_array( $memberlite_show_author_avatar ) && ! in_array( get_post_type(), $memberlite_show_author_avatar ) ) {
// Set to false if this post_type should not show avatars.
$memberlite_show_author_avatar = false;
}
}

// The return variable
$memberlite_author_avatar = '';

// If we get here, we know it is either true or set for this post type.
if ( ! empty( $memberlite_show_author_avatar ) ) :
$memberlite_avatar_size = apply_filters( 'memberlite_avatar_size', 80 );
$memberlite_author_avatar = '<div class="post_author_avatar">' . get_avatar( $author_id, $memberlite_avatar_size, '', get_the_author_meta( 'display_name', $author_id ) ) . '</div>';
endif;

return $memberlite_author_avatar;
}

/**
* Returns true if a blog has more than 1 category.
*
Expand Down
23 changes: 1 addition & 22 deletions search.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,31 +10,10 @@
<main id="main" class="site-main" role="main">
<?php do_action( 'memberlite_before_loop' ); ?>
<?php if ( have_posts() ) : ?>
<?php
/**
* Wrap posts output in the .grid-list class based on settings.
*/
$content_archives = get_theme_mod( 'content_archives', $memberlite_defaults['content_archives'] );
if ( $content_archives === 'grid' ) { ?>
<div class="grid-list">
<?php }
?>
<?php while ( have_posts() ) :
the_post(); ?>
<?php
/**
* Load the grid-style content part based on settings.
*/
if ( $content_archives === 'grid' ) {
get_template_part( 'components/post/content', 'grid' );
} else {
get_template_part( 'components/post/content', get_post_format() );
}
?>
<?php get_template_part( 'components/post/content', 'search' ); ?>
<?php endwhile; ?>
<?php if ( $content_archives === 'grid' ) { ?>
</div> <!-- end .grid-list -->
<?php } ?>
<?php memberlite_paging_nav(); ?>
<?php else : ?>
<?php get_template_part( 'components/post/content', 'none' ); ?>
Expand Down
Loading

0 comments on commit 27fc8c8

Please sign in to comment.