¿Cómo obtener el nombre del autor de la publicación en WordPress?

2 minutos de lectura

avatar de usuario
Rakhi Prajapati

En WordPress, necesito buscar el nombre del autor que creó la publicación usando author_id.
Cómo puedo encontrar author_name ?

  • Comprobar el documentos

    – Ramiz Wachtler

    18 de marzo de 2017 a las 8:12

Puedes usar get_the_author_meta()para obtener los datos del autor.

echo get_the_author_meta('display_name', $author_id);

¡Espero que esto ayude!

  • Descubrí que esta función está en desuso.

    – Rakhi Prajapati

    18 de marzo de 2017 a las 9:39

  • @RakhiPrajapati: ¿eh? No sabía ni el doc oficial decir nada al respecto.

    – Raunak Gupta

    18 de marzo de 2017 a las 9:48

  • get_the_author_meta() no se deprecia. Podrías estar pensando en get_the_author()

    -Rocky Kev

    6 de julio de 2021 a las 21:36

  • Donde hacer $author_idel valor de viene? Esto es confuso.

    – Akshay K Nair

    16 de diciembre de 2021 a las 8:49

  • @Akshaykn $author_id se refiere a la ID de usuario que pertenece a wp_users.id campo.

    – Raunak Gupta

    17 de diciembre de 2021 a las 8:13


avatar de usuario
amit

Esto debería funcionar a las mil maravillas.

<?php echo get_the_author(); ?>

Para obtener información más detallada.
https://codex.wordpress.org/Function_Reference/get_the_author

Use el código a continuación en single.php o en la página relevante en la que desea el nombre del autor

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

Agregue este código en single-post.php

<?php echo get_the_author(); ?>

Espero que esto funcione !!

Cuando se usa en el punto final de la API REST personalizada de WordPress, puede hacerlo así:

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;
}

avatar de usuario
dharma

Para aquellos que buscan una solución perfecta sobre cómo obtener un autor de una publicación en WordPress, este es otro método liviano.

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 );

¿Ha sido útil esta solución?