Leo’s suggestion would be the easiest way to do it. Consider trying it out as it’s our preferred way of doing things w/ GP.
But if you wish to try something else, a simple PHP + CSS combo could work.
PHP would need look something like this –
add_action('generate_after_content', 'custom_insert_author_box', 20);
function custom_insert_author_box(){
if( is_single() ) {
echo '<div id="author-box">
<div class="gravatar-col">'.get_avatar( get_the_author_meta( 'ID' ), 32 ) .'
</div>
<div class="author-info">
<div class="author-name"><span class="author">
<span class="author-name" itemprop="name">
<span class="author-before-text">Posted by </span>'.esc_html( get_the_author() ).'
</span>
</span>
</div>
<div class="author-desc">
<p class="author-bio">
'.get_the_author_meta( 'description' ).'
</p>
</div>
</div>
</div>';
}
}
CSS would look like this –
div#author-box {
display: flex;
flex-direction: row;
padding: 20px;
}
.gravatar-col {
display: flex;
align-content: center;
align-items: center;
padding: 20px;
}
img.avatar.avatar-32.photo {
border-radius: 50%;
}
span.author-before-text {
display: block;
}
.author-info .author-name {
margin-bottom: 20px;
}
It’s going to look roughly like this – https://share.getcloudapp.com/jkuvn0Qq – which will need CSS refining.
To achieve the best look, you’ll have to do the CSS tweaking to your preference.
But really, to avoid this tedious process, Leo’s suggestion is the way to go.:)