The default_avatar_select WordPress PHP filter allows you to modify the HTML output of the default avatar list.
Usage
add_filter('default_avatar_select', 'your_custom_function'); function your_custom_function($avatar_list) { // Your custom code here return $avatar_list; }
Parameters
$avatar_list
(string): HTML markup of the avatar list.
More information
See WordPress Developer Resources: default_avatar_select
Examples
Add a custom avatar to the list
Add a new custom avatar option to the default avatar list.
add_filter('default_avatar_select', 'add_custom_avatar'); function add_custom_avatar($avatar_list) { $custom_avatar = '<input type="radio" id="custom" name="avatar_default" value="custom_avatar_url">'; $custom_avatar .= '<label for="custom">Custom Avatar</label><br />'; return $avatar_list . $custom_avatar; }
Remove the ‘Mystery Person’ avatar option
Remove the ‘Mystery Person’ avatar option from the default avatar list.
add_filter('default_avatar_select', 'remove_mystery_person_avatar'); function remove_mystery_person_avatar($avatar_list) { return str_replace('<label for="mystery">Mystery Person</label><br />', '', $avatar_list); }
Add custom CSS class to avatar options
Add a custom CSS class to each avatar option in the list.
add_filter('default_avatar_select', 'add_css_class_to_avatars'); function add_css_class_to_avatars($avatar_list) { return str_replace('<input', '<input class="custom-class"', $avatar_list); }
Rearrange avatar options
Move the Gravatar logo option to the end of the avatar list.
add_filter('default_avatar_select', 'rearrange_avatar_options'); function rearrange_avatar_options($avatar_list) { $gravatar_logo = '<input type="radio" id="gravatar_logo" name="avatar_default" value="gravatar_logo">'; $gravatar_logo .= '<label for="gravatar_logo">Gravatar Logo</label><br />'; $avatar_list = str_replace($gravatar_logo, '', $avatar_list); return $avatar_list . $gravatar_logo; }
Wrap avatar options in a div
Wrap the avatar options in a div with a custom class.
add_filter('default_avatar_select', 'wrap_avatar_options'); function wrap_avatar_options($avatar_list) { return '<div class="custom-wrapper">' . $avatar_list . '</div>'; }