简体   繁体   English

如何在WordPress中获取帖子作者姓名?

[英]How to get post author name in WordPress?

In WordPress I need to fetch name of author who created post using author_id .在 WordPress 中,我需要获取使用author_id创建帖子的作者的author_id
How can I find author_name ?我怎样才能找到author_name

You can use get_the_author_meta() , to get author data.您可以使用get_the_author_meta()来获取作者数据。

echo get_the_author_meta('display_name', $author_id);

Hope this helps!希望这可以帮助!

This should work like charm这应该像魅力一样工作

<?php echo get_the_author(); ?>

For more detailed information.如需更多详细信息。 https://codex.wordpress.org/Function_Reference/get_the_author https://codex.wordpress.org/Function_Reference/get_the_author

在 single.php 或您想要作者姓名的相关页面中使用以下代码

<?php get_the_author_meta( 'display_name', $author_id ); ?>

Add This code in single-post.php在 single-post.php 中添加此代码

<?php echo get_the_author(); ?>

I hope this will work !!我希望这会奏效!!

When used in the WordPress Custom REST API endpoint you can do it like this:在 WordPress 自定义 REST API 端点中使用时,您可以这样做:

function customrestapiplugin_getpost( $slug ) {
    $args = [
        'name' => $slug['slug'],
        'post_type' => 'post'
    ];

    $post = get_posts($args);
    
    $data[$i]['id'] = $post[0]->ID;
        $data['title'] = $post[0]->post_title;
        $data['content'] = $post[0]->post_content;
        $data['excerpt'] = $post[0]->post_excerpt;
        $data['slug'] = $post[0]->post_name;
        $data['date'] = $post[0]->post_date;
        $data['link'] = get_permalink($post[0]->ID);
        $data['author'] = get_the_author_meta('display_name', $post[0]->post_author);
        $data['featured_image']['thumbnail'] = get_the_post_thumbnail_url($post[0]->ID, 'thumbnail');
        $data['featured_image']['medium'] = get_the_post_thumbnail_url($post[0]->ID, 'medium');
        $data['featured_image']['large'] = get_the_post_thumbnail_url($post[0]->ID, 'large');

    return $data;
}

For those who are looking for a seamless solution on how to get an author of a post in WordPress, this is another lightweight method.对于那些正在寻找如何在 WordPress 中获得帖子作者的无缝解决方案的人来说,这是另一种轻量级方法。

global $wpdb;

    $post_id = 12; // your post id
    
    $post_author_id = (int) $wpdb->get_var( $wpdb->prepare( "SELECT post_author FROM {$wpdb->posts} WHERE ID = %d ", $post_id ) );
    
    $author =  new WP_User( $post_author_id );
    
    $display_name = $author->display_name;
    
    $avartar = get_avatar( $post_author_id, 30 ); // get_avatar( userid, size )
    
    $author_url = get_author_posts_url( $post_author_id );

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM