Comment changer l'avatar de l'utilisateur?
-
-
Y a-t-il une raisonpour laquelle vousne pouvezpas utiliser deplugins?Est-ce unblog wordpress.com?(Utilisez `@ Jan` dans votre réponsepour queje reçoive unenotification)Is there a reason you can't use plugins? Is this a wordpress.com blog? (Use `@Jan` in your reply so I get a notification)
- 0
- 2011-01-24
- Jan Fabry
-
@Jan: la raisonest quej'aidemon copain à créer sonproprethèmegratuit.Et l'un denos objectifsest de le rendre également sansplugin.@Jan: the reason is I'm helping my buddy to build his own free theme. And one of our goals is to make it plugin-free too.
- 0
- 2011-01-24
- Wordpressor
-
Bien sûr,vouspouveztoujoursincluretout le code d'unplugin dans votremodèle (via lefichier `functions.php`).Est-cetoujours "sansplugin" dans votre définition?Of course, you can always include all code from a plugin in your template too (via the `functions.php` file). Is that still "plugin-free" in your definition?
- 0
- 2011-01-25
- Jan Fabry
-
7 réponses
- votes
-
- 2011-01-24
Les avatars sont destinés à être contrôléspar l'utilisateur,paspar vous.Alors oui,d'une certainemanière,vous êtes obligé d'utiliser le service Gravatar.Mais rappelez-vous,cela donne à l'utilisateur lapossibilité d'utiliser lemême avatarn'importe où,et vouspouveztoujours restreindre l'affichage d'ungravataren fonction de la classification du contenu (G,PG,PG-13,R).
Gravatarest un service hébergé,c'estpourquoiiln'y apas de section "Télécharger un avatar" dans leprofil.
Vous dites que vous "nepouvezpas utiliser deplugin",mais c'est vraiment la seulefaçon d'ajouter desfonctionnalités.Si vous souhaitez utiliser quelque chose autre que Gravatar,vous devrez charger unplug-inpour leprendreen charge.Ilexiste quelquesplug-insprenanten charge les avatars locaux:
Sinon,je vous recommande d'éduquer vos utilisateurs sur ce que sont les Gravatarset comment les utiliser.
Avatars are meant to be controlled by the user, not by you. So yes, in a way, you're being forced to use the Gravatar service. But remember, it gives the user the ability to use the same avatar anywhere, and you can always restrict the display of a gravatar based on content ratings (G, PG, PG-13, R).
Gravatar is a hosted service, which is why there's no "Upload Avatar" section in the profile.
You say you "can't use a plugin," but really that's the only way you can add features. If you want to use something other than Gravatar, you'll need to load a plug-in to support it. There are a few plug-ins that support local avatars:
Otherwise, I recommend you educate your users on what Gravatars are and how to use them.
-
C'est TOTALEMENT FAUX!Jen'aipas à éduquermes utilisateurs,carje veux changer l'avatar de l'administrateur,etc. Etje nepeuxpas.Etpour autant queje me souvienne,il y avait une option comme celle-ci?;/Celam'oblige à utiliser un site étrange queje ne veuxmêmepas utiliser.C'est étrange.Imaginez queje veuille créer unblogpour un réseauprofessionnel local sans accès à Internet (raisons de sécurité,données restreintes)etc. Et cen'estmêmepaspossible sansplugin.C'est dommage.That's TOTALLY WRONG! I don't have to educate my users, because I want to change admin's avatar etc. And I'm not able to. And as far as I remember there was an option like this? ;/ That's forcing me to use some strange site that I don't even want to use. That's STRANGE. Imagine I want to set up a blog for a local business network without internet access (security reasons, restricted data) etc. And it's not even possible without a plugin. What a shame.
- 2
- 2011-01-24
- Wordpressor
-
@Wordpressor: Par "c'esttotalementfaux",voulez-vous dire que la réponse d'EAMannestfausse,ouest-ce la situation avec laquelle vousn'êtespas d'accord?Gravatar appartient à Automattic,la société de Matt Mullenweg,qui décide de ce qui sepasse dans WordPress.C'estprobablement la raisonpour laquelleilsne leprennenten charge quepar défaut,et d'autresméthodes sont déléguées auxplugins.@Wordpressor: By "that's totally wrong", do you mean EAMann's answer is wrong, or is it the situation you don't agree with? Gravatar is owned by Automattic, the company of Matt Mullenweg, who decides what goes in WordPress. That's probably the reason why they only support it out of the box, and other methods are delegated to plugins.
- 0
- 2011-01-24
- Jan Fabry
-
@Wordpressor: si vous l'exécutez dans uneentreprise,vous voudrezprobablement également 1 LDAPpour des raisons de sécuritéet d'authentification unique.C'est votre clé: vous auriez également unemplacementpour "l'image de l'utilisateur".En dehors de l'application.@Wordpressor: if you run it inside a company you probably would also want 1 LDAP for security purposes and single sign on. That is your key: you would one location for the "user image" also. Outside of the app.
- 0
- 2011-01-24
- edelwater
-
@Jan Fabry: sa réponseest OK,maistoute lapolitiquene l'est PAS.Je développemonproprethème surmonpropre PC.Jen'ai qu'un seul utilisateur là-bas - admin.Je veux changer son avatar.Je suis capable de le saisir,de l'afficher,de changer sataillemaisje nepeuxpas le changer.Cen'estpas sympa.Et donnermon courrierjustepourpouvoir changermonpropre avataresttout simplementnul.@Jan Fabry: his ansewer is OK, but the whole policy is NOT. I'm developing my own theme on my own PC. I have only one user there - admin. I want to change his avatar. I'm able to grab it, display it, change it's size but I'm not able to change it. This is not nice. And giving my mail out just for ability of changing my own avatar is just lame.
- 0
- 2011-01-24
- Wordpressor
-
@Jan Fabry: LOL!C'estencoreplus drôle.Je dois créer uneentrée supplémentaire dansmonpanneau d'administration,carmon utilisateur doitenvoyer sonidentifiant Gravatar auback-end.WOOOHAA!INCROYABLE!Jete déteste Matt Mullenweg.@Jan Fabry: LOL! It's even funnier. I have to create additional input in my admin panel, because my user have to send his Gravatar ID to the back-end. WOOOHAA! AMAZING! I hate you Matt Mullenweg.
- 1
- 2011-01-24
- Wordpressor
-
@Wordpressor Pour le contexte [_Decisionsnot Options_] (http://wordpress.org/about/philosophy/)est l'une despierres angulaires de lafaçon dont les choses sontfaites dans WordPress.Faire défaut auxgravatarsest une décision qui a suffisamment de sens,quiest suffisammentflexibleet quifavorise le service affilié.Et lorsque la décisionestprise,il appartientgénéralement auxplugins defournir desmodifications ou des alternatives.@Wordpressor For the context [ _Decisions not Options_ ](http://wordpress.org/about/philosophy/) is one of cornerstones of how are things done in WordPress. Defaulting to gravatars is decision that makes enough sense, is flexible enough and promotes affiliated service. And when decision is made it is usually up to plugins to provide tweaks or alternatives.
- 2
- 2011-01-24
- Rarst
-
@Wordpressor Veuillez chanter lesparoles aléatoires de «Hello Dolly».Cela vousfera vous sentirmieux;)@Wordpressor Please sing the random lyrics of `Hello Dolly`. It will make you feel better ;)
- 2
- 2011-01-25
- Michal Mau
-
- 2011-01-25
Si vous demandez comment remplacer legravatarpar défautpar l'un des vôtres,vouspouvezmettre ce code dans lefunctions.php (oumieuxencore le custom-functions.php si votrethème leprenden charge).
add_filter( 'avatar_defaults', 'customgravatar' ); function customgravatar ($avatar_defaults) { $myavatar = get_home_url('Template_directory') . '/images/mycustomgravatar.jpg'; $avatar_defaults[$myavatar] = "My Custom Logo"; return $avatar_defaults; }
Créez unfichierimageet téléchargez-le dans le répertoireimage de votre site.Le "Mon logopersonnalisé"est le libellé de l'option dans la section Discussion de votretableau debord.De cettefaçon,tout utilisateur quin'apas degravatar recevra le logo de votre site à laplace.
If you are asking how to replace the default gravatar with one of your own, you can put this code in the functions.php (or better yet the custom-functions.php if your theme supports it).
add_filter( 'avatar_defaults', 'customgravatar' ); function customgravatar ($avatar_defaults) { $myavatar = get_home_url('Template_directory') . '/images/mycustomgravatar.jpg'; $avatar_defaults[$myavatar] = "My Custom Logo"; return $avatar_defaults; }
Create an image file and upload it to the image directory for your site. The "My Custom Logo" is the label for the option in the Discussion section of your Dashboard. This way any user who doesn't have a gravatar will get the logo of your site instead.
-
J'utilise ce code depuis des lustres,maisje dois donner auxgravatars untexte ALT.Jene saispas oùje peuxentrer cela sans casser le code.I've been using this code for ages, but I need to give the gravatars an ALT text. I'm not sure where I can enter that without breaking the code.
- 0
- 2015-05-23
- japanworm
-
- 2016-11-28
Vous avezbesoin d'unpeuplus de codepour que le hook avatar_defaultsfonctionne que la réponse de Ray Mitchell,j'aitrouvé ce code sur le pages de codex wordpress et cela abien fonctionnégrâce à l'ID utilisateurnormalisétransmis au hook d'avatarpar défaut (celafonctionne soit avec un simple ID utilisateur oue-mail ET avec l'utilisateur de l'objet lui-même)
// Apply filter add_filter( 'get_avatar' , 'my_custom_avatar' , 1 , 5 ); function my_custom_avatar( $avatar, $id_or_email, $size, $default, $alt ) { $user = false; if ( is_numeric( $id_or_email ) ) { $id = (int) $id_or_email; $user = get_user_by( 'id' , $id ); } elseif ( is_object( $id_or_email ) ) { if ( ! empty( $id_or_email->user_id ) ) { $id = (int) $id_or_email->user_id; $user = get_user_by( 'id' , $id ); } } else { $user = get_user_by( 'email', $id_or_email ); } if ( $user && is_object( $user ) ) { if ( $user->data->ID == '1' ) { $avatar = 'YOUR_NEW_IMAGE_URL'; $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; } } return $avatar; }
You need a little more code for the avatar_defaults hook to work than the Ray Mitchell answer, I found this code on the wordpress codex pages and it worked fine thanks to the normalized user id passed on to the default avatar hook (this works either with a simple user id or email AND with the object user itself)
// Apply filter add_filter( 'get_avatar' , 'my_custom_avatar' , 1 , 5 ); function my_custom_avatar( $avatar, $id_or_email, $size, $default, $alt ) { $user = false; if ( is_numeric( $id_or_email ) ) { $id = (int) $id_or_email; $user = get_user_by( 'id' , $id ); } elseif ( is_object( $id_or_email ) ) { if ( ! empty( $id_or_email->user_id ) ) { $id = (int) $id_or_email->user_id; $user = get_user_by( 'id' , $id ); } } else { $user = get_user_by( 'email', $id_or_email ); } if ( $user && is_object( $user ) ) { if ( $user->data->ID == '1' ) { $avatar = 'YOUR_NEW_IMAGE_URL'; $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; } } return $avatar; }
-
«$ Default»est-il destiné à être l'avatarpar défaut dans le cas où cesinstructionsif échouent?Is `$default` intended to be the default avatar in the event that these if-statements fail?
- 0
- 2016-12-12
- nu everest
-
Commeindiqué dans le codex $ defaultest l'url de l'avatarpar défaut sans avatar sélectionné,la valeurpar défaut de wordpress utilise "Mysteryman"As stated in the codex $default is the url of the deafult avatar while no avatar is selected, wordpress' default uses "Mystery man"
- 0
- 2016-12-12
- jilt
-
https://codex.wordpress.org/Function_Reference/get_avatarpourplus d'informationshttps://codex.wordpress.org/Function_Reference/get_avatar for more info
- 0
- 2016-12-12
- jilt
-
Je connais cet ancienmaisj'aipassé quelquesjours à chercher une solution,et la vôtre afonctionnépourmoi.Merci!i know this old but i spent passed few days looking for a solution, and yours worked for me. Thanks!
- 0
- 2020-07-05
- Rich
-
- 2011-01-25
Je sais que sur un site deprojet,j'aipu créer un champ sur lapage de l'éditeur deprofil utilisateurpour accepter un chemin d'image (téléchargé via lapagemédia sije me souviensbien) quipouvait être utilisépour les avatars.Aucunplug-innécessaire.
I know that on one project site, I was able to create a field on the user profile editor page for accepting an image path(uploaded through the media page if I recall right) that was able to be used for avatars. No plugins needed.
-
- 2012-10-30
J'ai remarqué que cela dépend duthème activé.Aucune option dans lethème Mantraparexemple,maisil y a une option dans lethèmepar défautbuddypress.
I noticed that it depends on which theme is activated. No option in Mantra theme for example, but there is an option in the buddypress default theme.
-
- 2016-01-18
Vouspouvez lefaire ... Vous devez ajouter l'image à votremédia.Copiez cette URL defichiermultimédiaet collez-la/liez-la à l'URL de votre avatar utilisateurpersonnalisé sousmodifier l'utilisateur.TRIÉ!
You can do it... You need to add the image to your media. Copy that media file URL and paste/link it to your custom user avatar url under edit user. SORTED!
-
- 2017-03-05
Ajoutez votrefichier avatar.jpg dans votre dossier d'images dethèmesenfantset le code suivant dans votrefichier defonctions dethèmesenfants:
add_filter( 'get_avatar' , 'add_custom_avatar' , 1 , 5 ); function add_custom_avatar( $avatar, $id_or_email, $size, $default, $alt ) { $user = false; if ( is_numeric( $id_or_email ) ) { $id = (int) $id_or_email; $user = get_user_by( 'id' , $id ); } elseif ( is_object( $id_or_email ) ) { if ( ! empty( $id_or_email->user_id ) ) { $id = (int) $id_or_email->user_id; $user = get_user_by( 'id' , $id ); } } else { $user = get_user_by( 'email', $id_or_email ); } if ( $user && is_object( $user ) ) { if ( $user->data->ID == '1' ) { $avatar = sprintf( '%s/images/avatar.jpg', get_stylesheet_directory_uri() ); $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; } } return $avatar; }
Add your avatar.jpg file to your child themes images folder and the following code to your child themes functions file:
add_filter( 'get_avatar' , 'add_custom_avatar' , 1 , 5 ); function add_custom_avatar( $avatar, $id_or_email, $size, $default, $alt ) { $user = false; if ( is_numeric( $id_or_email ) ) { $id = (int) $id_or_email; $user = get_user_by( 'id' , $id ); } elseif ( is_object( $id_or_email ) ) { if ( ! empty( $id_or_email->user_id ) ) { $id = (int) $id_or_email->user_id; $user = get_user_by( 'id' , $id ); } } else { $user = get_user_by( 'email', $id_or_email ); } if ( $user && is_object( $user ) ) { if ( $user->data->ID == '1' ) { $avatar = sprintf( '%s/images/avatar.jpg', get_stylesheet_directory_uri() ); $avatar = "<img alt='{$alt}' src='{$avatar}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' />"; } } return $avatar; }
Existe-t-il unmoyen de changer l'avatar de l'utilisateur sansplugins?Pourquoin'y a-t-ilpas de section "Téléchargement d'avatar" dans Utilisateurs> Votreprofil?
Jene peuxpas utiliser deplugin.Suis-je aveugle ou obligé d'utiliser Gravatar?;/