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

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

Return: (string) The author's field from the current author's DB object.

Source file: wp-includes/author-template.php

View source


Parameters

$field

(string) (Optional) selects the field of the users record.

Default value: ''

$user_id

(int) (Optional) User ID.

Default value: false


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.


Used by


Source

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' ) ) )
		$field = 'user_' . $field;

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

	/**
	 * Filter 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|bool $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 );
}


Changelog


User Contributed Notes

  1. Get A User’s Email Address
    Get the email address for the author of the current post and store it in the $user_email variable for further use. (Remember, this function returns data, it doesn’t display it.)

    <?php $user_email = get_the_author_meta( 'user_email' ); ?>
    
    
  2. 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 ); ?></a></p>
    
    

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