bb_get_avatar
Retrieve the avatar for a user provided a user ID or email address.
Description
(string) bb_get_avatar( (int|string) $id_or_email, (int) $size = 80, (string) $default = '', (bool) $alt = false );
Returns (string)
tag for the user's avatar
Parameters (4)
- 0. $id_or_email (int|string)
- A user ID or email address
- 1. $size — Optional. (int) =>
80
- Size of the avatar image
- 2. $default — Optional. (string) =>
''
- URL to a default image to use if no avatar is available
- 3. $alt — Optional. (bool) =>
false
- Alternate text to use in image tag. Defaults to blank
Usage
if ( !function_exists( 'bb_get_avatar' ) ) { require_once ABSPATH . PLUGINDIR . 'buddypress/bp-forums/bbpress/bb-includes/functions.bb-pluggable.php'; } // A user ID or email address $id_or_email = null; // Size of the avatar image $size = 80; // URL to a default image to use if no avatar is available $default = ''; // Alternate text to use in image tag. Defaults to blank $alt = false; // NOTICE! Understand what this does before running. $result = bb_get_avatar($id_or_email, $size, $default, $alt);
Defined (1)
The function is defined in the following location(s).
- /bp-forums/bbpress/bb-includes/functions.bb-pluggable.php
- function bb_get_avatar( $id_or_email, $size = 80, $default = '', $alt = false ) {
- if ( !bb_get_option('avatars_show') )
- return false;
- if ( false === $alt)
- $safe_alt = '';
- else
- $safe_alt = esc_attr( $alt );
- if ( !is_numeric($size) )
- $size = 80;
- if ( $email = bb_get_user_email($id_or_email) ) {
- $class = 'photo ';
- } else {
- $class = '';
- $email = $id_or_email;
- }
- if ( !$email )
- $email = '';
- if ( empty($default) )
- $default = bb_get_option('avatars_default');
- if ( is_ssl() )
- $host = 'https://secure.gravatar.com';
- else
- $host = 'http://www.gravatar.com';
- switch ($default) {
- case 'logo':
- $default = '';
- break;
- case 'blank':
- $default = bb_get_uri( 'bb-admin/images/blank.gif', null, BB_URI_CONTEXT_IMG_SRC );
- break;
- case 'monsterid':
- case 'wavatar':
- case 'identicon':
- case 'retro':
- break;
- case 'default':
- default:
- $default = $host . '/avatar/ad516503a11cd5ca435acc9bb6523536?s=' . $size;
- // ad516503a11cd5ca435acc9bb6523536 == md5('unknown@gravatar.com')
- break;
- }
- $src = $host . '/avatar/';
- $class .= 'avatar avatar-' . $size;
- if ( !empty($email) ) {
- $src .= md5( strtolower( $email ) );
- } else {
- $src .= 'd41d8cd98f00b204e9800998ecf8427e';
- // d41d8cd98f00b204e9800998ecf8427e == md5('')
- $class .= ' avatar-noemail';
- }
- $src .= '?s=' . $size;
- $src .= '&d=' . urlencode( $default );
- $rating = bb_get_option('avatars_rating');
- if ( !empty( $rating ) )
- $src .= '&r=' . $rating;
- $avatar = '<img alt="' . $safe_alt . '" src="' . $src . '" class="' . $class . '" style="height:' . $size . 'px; width:' . $size . 'px;" />';
- return apply_filters('bb_get_avatar', $avatar, $id_or_email, $size, $default, $alt);
- }