Created
March 23, 2020 12:38
-
-
Save stevetaivn/5a0af38d00a354deecd8d7acc3fc8df0 to your computer and use it in GitHub Desktop.
Get Author Box Code
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function wpb_author_info_box( $content ) { | |
global $post; | |
// Detect if it is a single post with a post author | |
if ( is_single() && isset( $post->post_author ) ) { | |
// Get author's display name | |
$display_name = get_the_author_meta( 'display_name', $post->post_author ); | |
// If display name is not available then use nickname as display name | |
if ( empty( $display_name ) ) | |
$display_name = get_the_author_meta( 'nickname', $post->post_author ); | |
// Get author's biographical information or description | |
$user_description = get_the_author_meta( 'user_description', $post->post_author ); | |
// Get author's website URL | |
$user_website = get_the_author_meta('url', $post->post_author); | |
// Get link to the author archive page | |
$user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author)); | |
if ( ! empty( $display_name ) ) | |
$author_details = '<p class="author_name">About ' . $display_name . '</p>'; | |
if ( ! empty( $user_description ) ) | |
// Author avatar and bio | |
$author_details .= '<p class="author_details">' . get_avatar( get_the_author_meta('user_email') , 90 ) . nl2br( $user_description ). '</p>'; | |
$author_details .= '<p class="author_links"><a href="'. $user_posts .'">View all posts by ' . $display_name . '</a>'; | |
// Check if author has a website in their profile | |
if ( ! empty( $user_website ) ) { | |
// Display author website link | |
$author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow">Website</a></p>'; | |
} else { | |
// if there is no author website then just close the paragraph | |
$author_details .= '</p>'; | |
} | |
// Pass all this info to post content | |
$content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>'; | |
} | |
return $content; | |
} | |
// Add our function to the post content filter | |
add_action( 'the_content', 'wpb_author_info_box' ); | |
// Allow HTML in author bio section | |
remove_filter('pre_user_description', 'wp_filter_kses'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment