get_the_author_meta( string $field = '', int|false $user_id = false ): string

Retrieves the requested data of the author of the current post.


Valid values for the $field parameter include:

  • admin_color
  • aim
  • comment_shortcuts
  • description
  • display_name
  • first_name
  • ID
  • jabber
  • last_name
  • nickname
  • plugins_last_view
  • plugins_per_page
  • rich_editing
  • syntax_highlighting
  • user_activation_key
  • user_description
  • user_email
  • user_firstname
  • user_lastname
  • user_level
  • user_login
  • user_nicename
  • user_pass
  • user_registered
  • user_status
  • user_url
  • yim

Top ↑


$field string Optional
The user field to retrieve.

Default: ''

$user_id int|false Optional
User ID. Defaults to the current post author.

Default: false

Top ↑


string The author's field from the current author's DB object, otherwise an empty string.

Top ↑

More Information

If used within The Loop, the user ID need not be specified, it defaults to current post author. A user ID must be specified if used outside The Loop.

get_the_author_meta() returns the data for use programmatically in PHP. To just display it instead, use the_author_meta()

If the specified meta field does not exist for this user, an empty string is returned.

Plugins may add additional fields to the user profile, which in turn adds new key/value pairs to the wp_usermeta database table. This additional data can be retrieved by passing the field’s key to the function as the $field parameter.

Top ↑


File: wp-includes/author-template.php. View all references

function get_the_author_meta( $field = '', $user_id = false ) {
	$original_user_id = $user_id;

	if ( ! $user_id ) {
		global $authordata;
		$user_id = isset( $authordata->ID ) ? $authordata->ID : 0;
	} else {
		$authordata = get_userdata( $user_id );

	if ( in_array( $field, array( 'login', 'pass', 'nicename', 'email', 'url', 'registered', 'activation_key', 'status' ), true ) ) {
		$field = 'user_' . $field;

	$value = isset( $authordata->$field ) ? $authordata->$field : '';

	 * Filters the value of the requested user metadata.
	 * The filter name is dynamic and depends on the $field parameter of the function.
	 * @since 2.8.0
	 * @since 4.3.0 The `$original_user_id` parameter was added.
	 * @param string    $value            The value of the metadata.
	 * @param int       $user_id          The user ID for the value.
	 * @param int|false $original_user_id The original user ID, as passed to the function.
	return apply_filters( "get_the_author_{$field}", $value, $user_id, $original_user_id );

Top ↑


Top ↑


Version Description
2.8.0 Introduced.

Top ↑

User Contributed Notes

  1. Skip to note 2 content
    Contributed by aThemeArt

    Get the author ID Outside loop:

    global $post;
    $author_id = $post->post_author;

    Get the author ID inside a loop :

     $author_id = get_the_author_meta( 'ID' ); 

    bellow is a few examples of author value :

    // to get  nicename
    get_the_author_meta( 'nicename', $author_id );
    // to get  email
    get_the_author_meta( 'email', $author_id );
    // to get  url
    get_the_author_meta( 'url', $author_id );
    // to get  status
    get_the_author_meta( 'status', $author_id );
  2. Skip to note 3 content
    Contributed by Milana Cap

    Using the wpautop() for description will also keep the line break (like in studio-jt’ comment) but will output cleaner html:

     * Display Author's description 
     * with keeping line breaks and wrapping its paragraphs
     * into <p> tag
     * @link
    echo wpautop( get_the_author_meta( 'description' ) );
  3. Skip to note 5 content
    Contributed by Codex

    Show a User’s Display Name With Email Address Linked
    Get the email address for user ID 25, and echo it using their display name as the anchor text.

    <p>Email the author: 
        <a href="mailto:<?php echo get_the_author_meta( 'user_email', 25 ); ?>">
            <?php the_author_meta( 'display_name', 25 ); ?>
  4. Skip to note 7 content
    Contributed by karlazz

    What are the author meta that I can use in “field”?

    Could they be added to this page? Or a link to another page that lists them could be added perhaps?

You must log in before being able to contribute a note or feedback.