Los usuarios de WordPress pueden obtener un avatar principalmente a través de Gravatar. Consulte: https://wordpress.org/documentation/article/use-gravatars/ – es decir, tendrían que almacenar su imagen individual allí.
Si quieres mostrar un avatar independientemente del servicio, existen varios complementos para ello: https://wordpress.org/plugins/tags/avatar/ – No sé cuál de ellos ya has probado. Si tienes problemas con alguno de ellos, lo mejor es que preguntes en el foro de soporte correspondiente.
Hola @michalrama,
Puede utilizar el siguiente código para agregar/cambiar los íconos del avatar del usuario.
Instrucción:
- Copie el código y péguelo en el archivo functions.php de su tema activo o cree un complemento
- Ir al perfil de usuario
- Desplácese hacia abajo hasta el final de la página.
- Subir el avatar del usuario
- Haga clic en el botón Actualizar perfil.
// Add custom avatar field to user profile
add_action('show_user_profile', 'custom_avatar_field');
add_action('edit_user_profile', 'custom_avatar_field');
function custom_avatar_field($user) {
$avatar = get_user_meta($user->ID, 'custom_avatar', true);
?>
Custom Avatar
}// Save custom avatar using profile update hooks
add_action('personal_options_update', 'save_custom_avatar');
add_action('edit_user_profile_update', 'save_custom_avatar');
function save_custom_avatar($user_id) {
if (!empty($_FILES['custom_avatar']['name'])) {
$upload = wp_upload_bits($_FILES['custom_avatar']['name'], null, file_get_contents($_FILES['custom_avatar']['tmp_name']));
if (!$upload['error']) {
update_user_meta($user_id, 'custom_avatar', $upload['url']);
}
}
if (isset($_POST['remove_avatar'])) {
delete_user_meta($user_id, 'custom_avatar');
}
}
// Display custom avatar
add_filter('get_avatar', 'custom_avatar', 10, 5);
function custom_avatar($avatar, $id_or_email, $size, $default, $alt) {
$user = is_numeric($id_or_email) ? get_user_by('id', (int)$id_or_email) : get_user_by('email', $id_or_email);
$custom_avatar = $user ? get_user_meta($user->ID, 'custom_avatar', true) : false;
if ($custom_avatar) {
$avatar="';
}
return $avatar;
}
function custom_avatar_enqueue_script() {
?>
}
add_action('admin_footer', 'custom_avatar_enqueue_script');