REST API: Allow `rest_get_avatar_urls()` to accept full user, post, or comment objects, rather than just an email address, to provide better flexibility for alternative avatar data.
Since the function uses `get_avatar_url()` internally, which already supports it, this should not have any backward compatibility concerns. Props donmhico, dshanske, pputzer, joehoyle, TimothyBlynJacobs. Fixes #40030. Built from https://develop.svn.wordpress.org/trunk@45632 git-svn-id: http://core.svn.wordpress.org/trunk@45443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
ee8813606d
commit
e85a5c64a3
|
@ -1085,21 +1085,22 @@ function rest_is_boolean( $maybe_bool ) {
|
|||
}
|
||||
|
||||
/**
|
||||
* Retrieves the avatar urls in various sizes based on a given email address.
|
||||
* Retrieves the avatar urls in various sizes.
|
||||
*
|
||||
* @since 4.7.0
|
||||
*
|
||||
* @see get_avatar_url()
|
||||
*
|
||||
* @param string $email Email address.
|
||||
* @param mixed $id_or_email The Gravatar to retrieve a URL for. Accepts a user_id, gravatar md5 hash,
|
||||
* user email, WP_User object, WP_Post object, or WP_Comment object.
|
||||
* @return array $urls Gravatar url for each size.
|
||||
*/
|
||||
function rest_get_avatar_urls( $email ) {
|
||||
function rest_get_avatar_urls( $id_or_email ) {
|
||||
$avatar_sizes = rest_get_avatar_sizes();
|
||||
|
||||
$urls = array();
|
||||
foreach ( $avatar_sizes as $size ) {
|
||||
$urls[ $size ] = get_avatar_url( $email, array( 'size' => $size ) );
|
||||
$urls[ $size ] = get_avatar_url( $id_or_email, array( 'size' => $size ) );
|
||||
}
|
||||
|
||||
return $urls;
|
||||
|
|
|
@ -949,7 +949,7 @@ class WP_REST_Comments_Controller extends WP_REST_Controller {
|
|||
}
|
||||
|
||||
if ( in_array( 'author_avatar_urls', $fields, true ) ) {
|
||||
$data['author_avatar_urls'] = rest_get_avatar_urls( $comment->comment_author_email );
|
||||
$data['author_avatar_urls'] = rest_get_avatar_urls( $comment );
|
||||
}
|
||||
|
||||
if ( in_array( 'meta', $fields, true ) ) {
|
||||
|
|
|
@ -938,7 +938,7 @@ class WP_REST_Users_Controller extends WP_REST_Controller {
|
|||
}
|
||||
|
||||
if ( in_array( 'avatar_urls', $fields, true ) ) {
|
||||
$data['avatar_urls'] = rest_get_avatar_urls( $user->user_email );
|
||||
$data['avatar_urls'] = rest_get_avatar_urls( $user );
|
||||
}
|
||||
|
||||
if ( in_array( 'meta', $fields, true ) ) {
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
*
|
||||
* @global string $wp_version
|
||||
*/
|
||||
$wp_version = '5.3-alpha-45631';
|
||||
$wp_version = '5.3-alpha-45632';
|
||||
|
||||
/**
|
||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||
|
|
Loading…
Reference in New Issue