Cómo obtener el nombre de usuario del autor en WordPress
¿Cómo se obtiene el nombre de usuario del autor?
Estoy usando este código:
get_the_author()
Quería cambiarlo para obtener el nombre de usuario del autor, en lugar del nombre mostrado del autor.
Gracias

En el Loop, sería:
$authorname = get_the_author_meta('user_nicename');
O:
$authorname = get_the_author_meta('displayname');
O:
$authorname = get_the_author_meta('nickname');
O cualquier campo que get_the_author_meta()
acepte.
$authorname = get_the_author_meta('user_nicename',123);
Si solo necesitas echo
el nombre, usa the_author_meta()
en su lugar:
the_author_meta('user_nicename',123);

En relación a la respuesta de @s_ha_dum anterior, tiene razón, pero ya no es get_the_author_meta('displayname');
, debería ser: get_the_author_meta('display_name');
.
Ver: https://developer.wordpress.org/reference/functions/get_the_author_meta/

Encontré algo que podría ser de más ayuda.
Tenemos múltiples opciones para obtener el nombre del autor proporcionadas por WP. 1)
<?php get_the_author_meta( $field, $userID ); ?>
Con esta función puedes obtener el nombre del autor actual mediante:
<?php $auth_name = get_the_author_meta( 'display_name' ); ?>
O si pasas $userID
como segundo parámetro, puedes obtener el campo de ese usuario así:
<?php $auth_name = get_the_author_meta( 'display_name', $userID ); ?>
Hay diferentes campos que puedes recuperar mediante esta función para obtener información del autor respectivo:
display_name
, nickname
, first_name
, last_name
y Muchos más
<?php get_userdata($userID ); ?>
Esto se hace configurando una variable llamada $currauth
(Autor Actual). La forma habitual de hacerlo es colocar las siguientes líneas antes del bucle en tu archivo de plantilla:
<?php
$currauth = (isset($_GET['author_name'])) ? get_user_by('slug', $_GET['author_name']) : get_userdata($_GET['author']);
?>
O este ejemplo que solo funciona en WordPress versión 2.8 y superior:
<?php
$currauth = (get_query_var('author_name')) ? get_user_by('slug', get_query_var('author_name')) : get_userdata(get_query_var('author'));
?>
Ahora que tienes configurada la variable $currauth, puedes usarla para mostrar todo tipo de información sobre el autor cuya página se está mostrando. Ahora tienes las siguientes opciones para usar:
//Para nombre mostrado
$currauth->display_name;
//Para Primer Nombre
$currauth->first_name
//Para Apellido
$currauth->last_name
//Para Apodo
$currauth->nickname
Házme saber si tienes alguna otra consulta sobre esto.
¡Gracias!

Dentro del Loop
$username=get_the_author_meta('user_nicename');
Fuera del Loop (Supongamos $user_id=1)
$username=get_the_author_meta( 'user_nicename', $user_id );
Puedes usar la función get_userdata.
$username=get_userdata($user_id)->user_nicename;
puedes usar la función get_user_by
$username=get_user_by( 'id', $user_id )->user_nicename;
