Home  >  Article  >  CMS Tutorial  >  How to automatically add an author information box at the end of a WordPress post

How to automatically add an author information box at the end of a WordPress post

藏色散人
藏色散人forward
2019-12-20 13:31:353051browse

The following column WordPress Tutorial will introduce to you how to automatically add an author information box at the end of a WordPress article. I hope it will be helpful to friends in need!

How to automatically add an author information box at the end of a WordPress post

If you want to add relevant information about the author of the article at the end of the WordPress article, the following code can be conveniently included in the article Add an author info box.

Add the code to the current theme functions.php:

function wp_author_info_box( $content ) {
    global $post;
    // 检测文章与文章作者
    if ( is_single() && isset( $post->post_author ) ) {
        // 获取作者名称
        $display_name = get_the_author_meta( 'display_name', $post->post_author );
        // 如果没有名称,使用昵称
        if ( empty( $display_name ) )
        $display_name = get_the_author_meta( 'nickname', $post->post_author );
        // 作者的个人信息
        $user_description = get_the_author_meta( 'user_description', $post->post_author );
        // 获取作者的网站
        $user_website = get_the_author_meta('url', $post->post_author);
        // 作者存档页面链接
        $user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));
        if ( ! empty( $display_name ) )
        $author_details = &#39;<div class="author-name">关于 &#39; . $display_name . &#39;</div>&#39;;
        if ( ! empty( $user_description ) )
        // 作者头像
        $author_details .= &#39;<div class="author-details">&#39; . get_avatar( get_the_author_meta(&#39;user_email&#39;) , 90 ) . nl2br( $user_description ). &#39;</div>&#39;;
        $author_details .= &#39;<div class="author-links"><a href="&#39;. $user_posts .&#39;">查看 &#39; . $display_name . &#39; 所有文章</a>&#39;;
        // 检查作者在个人资料中是否填写了网站
        if ( ! empty( $user_website ) ) {
        // 显示作者的网站链接
        $author_details .= &#39; | <a href="&#39; . $user_website .&#39;" target="_blank" rel="nofollow">网站</a></div>&#39;;
        } else {
            // 如果作者没有填写网站则不显示网站链接
            $author_details .= &#39;</div>&#39;;
        }
        // 在文章后面添加作者信息
        $content = $content . &#39;<footer class="author-bio-section" >&#39; . $author_details . &#39;</footer>&#39;;
    }
    return $content;
}
// 添加过滤器
add_action( &#39;the_content&#39;, &#39;wp_author_info_box&#39; );
// 允许HTML
remove_filter(&#39;pre_user_description&#39;, &#39;wp_filter_kses&#39;);
再将配套的CSS添加到主题样式文件style.css中:
.author-bio-section {
    background: #fff;
    float: left;
    width: 100%;
    margin: 10px 0;
    padding: 15px;
    border: 1px dashed #ccc;
}
.author-name {
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 5px 0;
}
.author-details img {
    float: left;
    width: 48px;
    height: auto;
    margin: 5px 15px 0 0;
}

The above is the detailed content of How to automatically add an author information box at the end of a WordPress post. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:zmingcx.com. If there is any infringement, please contact admin@php.cn delete