Admin: Fix default avatar handling in Settings -> Discussion.

By passing the `force_default` argument to `get_avatar()` instead of using `preg_replace`, we make it easier for developers to override the output.

Props henry.wright.
Fixes #34744.

git-svn-id: https://develop.svn.wordpress.org/trunk@37227 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Pascal Birchler 2016-04-17 10:18:39 +00:00
parent 0f568497a0
commit 3d26146c17
1 changed files with 1 additions and 7 deletions

View File

@ -240,7 +240,6 @@ $avatar_defaults = array(
*/ */
$avatar_defaults = apply_filters( 'avatar_defaults', $avatar_defaults ); $avatar_defaults = apply_filters( 'avatar_defaults', $avatar_defaults );
$default = get_option( 'avatar_default', 'mystery' ); $default = get_option( 'avatar_default', 'mystery' );
$size = 32;
$avatar_list = ''; $avatar_list = '';
// Force avatars on to display these choices // Force avatars on to display these choices
@ -249,12 +248,7 @@ add_filter( 'pre_option_show_avatars', '__return_true', 100 );
foreach ( $avatar_defaults as $default_key => $default_name ) { foreach ( $avatar_defaults as $default_key => $default_name ) {
$selected = ($default == $default_key) ? 'checked="checked" ' : ''; $selected = ($default == $default_key) ? 'checked="checked" ' : '';
$avatar_list .= "\n\t<label><input type='radio' name='avatar_default' id='avatar_{$default_key}' value='" . esc_attr($default_key) . "' {$selected}/> "; $avatar_list .= "\n\t<label><input type='radio' name='avatar_default' id='avatar_{$default_key}' value='" . esc_attr($default_key) . "' {$selected}/> ";
$avatar_list .= get_avatar( $user_email, 32, $default_key, '', array( 'force_default' => true ) );
$avatar = get_avatar( $user_email, $size, $default_key );
$avatar = preg_replace( "/src='(.+?)'/", "src='\$1&amp;forcedefault=1'", $avatar );
$avatar = preg_replace( "/srcset='(.+?) 2x'/", "srcset='\$1&amp;forcedefault=1 2x'", $avatar );
$avatar_list .= $avatar;
$avatar_list .= ' ' . $default_name . '</label>'; $avatar_list .= ' ' . $default_name . '</label>';
$avatar_list .= '<br />'; $avatar_list .= '<br />';
} }