Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /** START || JNews Custom Avatar Size */
- /**
- * JNews Custom || Add New Image Size
- */
- function jnews_custom_new_image_size() {
- add_image_size( 'avatar-400x400', 400, 400, true );
- }
- add_action( 'init', 'jnews_custom_new_image_size' );
- /**
- * JNews Custom || Use New Avatar Size
- *
- * @param string $avatar HTML for the user's avatar.
- * @param mixed $id_or_email The avatar to retrieve. Accepts a user ID, Gravatar MD5 hash,
- * user email, WP_User object, WP_Post object, or WP_Comment object.
- * @param int $size Height and width of the avatar in pixels.
- * @param string $default_value URL for the default image or a default type. Accepts:
- * - '404' (return a 404 instead of a default image)
- * - 'retro' (a 8-bit arcade-style pixelated face)
- * - 'robohash' (a robot)
- * - 'monsterid' (a monster)
- * - 'wavatar' (a cartoon face)
- * - 'identicon' (the "quilt", a geometric pattern)
- * - 'mystery', 'mm', or 'mysteryman' (The Oyster Man)
- * - 'blank' (transparent GIF)
- * - 'gravatar_default' (the Gravatar logo)
- * @param string $alt Alternative text to use in the avatar image tag.
- * @param array $args Arguments passed to get_avatar_data(), after processing.
- */
- function jnews_custom_avatar_size( $avatar, $user_id, $size, $default, $alt, $args ) {
- $profile_picture = get_the_author_meta( 'profile_picture', $user_id );
- if ( $profile_picture ) {
- $image = wp_get_attachment_image_src( $profile_picture, 'avatar-400x400' );
- $class = array( 'avatar', 'avatar-' . (int) $args['size'], 'photo' );
- if ( ! $args['found_avatar'] || $args['force_default'] ) {
- $class[] = 'avatar-default';
- }
- if ( $args['class'] ) {
- if ( is_array( $args['class'] ) ) {
- $class = array_merge( $class, $args['class'] );
- } else {
- $class[] = $args['class'];
- }
- }
- $avatar = sprintf(
- "<img alt='%s' src='%s' srcset='%s' class='%s' height='%d' width='%d' %s/>",
- esc_attr( $args['alt'] ),
- esc_url( $image[0] ),
- esc_attr( "$image[0] 2x" ),
- esc_attr( join( ' ', $class ) ),
- (int) $args['height'],
- (int) $args['width'],
- $args['extra_attr']
- );
- }
- return $avatar;
- }
- add_filter( 'get_avatar', 'jnews_custom_avatar_size', 99, 6 );
- /** END || JNews Custom Avatar Size */
Advertisement
Add Comment
Please, Sign In to add comment