广告投放

在WordPress 文章未尾自动添加一个作者信息框

目录

    在WordPress 文章未尾自动添加一个作者信息框

    如果想在WordPress文章的末尾,添加文章作者的相关信息,下面一段代码可以方便在文章中添加一个作者的信息框。

    将代码添加到当前主题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 = '<div class="author-name">关于 ' . $display_name . '</div>';
            if ( ! empty( $user_description ) )
            // 作者头像
            $author_details .= '<div class="author-details">' . get_avatar( get_the_author_meta('user_email') , 90 ) . nl2br( $user_description ). '</div>';
            $author_details .= '<div class="author-links"><a href="'. $user_posts .'">查看 ' . $display_name . ' 所有文章</a>';
            // 检查作者在个人资料中是否填写了网站
            if ( ! empty( $user_website ) ) {
            // 显示作者的网站链接
            $author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow">网站</a></div>';
            } else {
                // 如果作者没有填写网站则不显示网站链接
                $author_details .= '</div>';
            }
            // 在文章后面添加作者信息
            $content = $content . '<footer class="author-bio-section" >' . $author_details . '</footer>';
        }
        return $content;
    }
    // 添加过滤器
    add_action( 'the_content', 'wp_author_info_box' );
    // 允许HTML
    remove_filter('pre_user_description', 'wp_filter_kses');

    再将配套的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;
    }
    声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

    给TA打赏
    共{{data.count}}人
    人已打赏
    广告位招租919838898
    0 条回复 A文章作者 M管理员
      暂无讨论,说说你的看法吧
    个人中心
    购物车
    优惠劵
    今日签到
    有新私信 私信列表
    搜索