[Tutoriel] Ajouter un icône d'utilisateur dans le "postbit". - Saphir - 28-01-2012
Bonsoir à tous et à toutes.
Dans ce tutoriel, nous allons apprendre à ajouter un icône à côté du nom de l'expéditeur de chaque message.
Pour restreindre l'affichage de cet icône à certains utilisateurs ou à une certaine catégorie d'utilisateurs, nous allons devoir utiliser des conditions dans un langage nommé PHP. Par défaut, il n'est pas possible d'utiliser ce langage dans les templates. Pour pallier à ce problème, je vous invite à télécharger ce greffon : http://mybbhacks.zingaburga.com/showthread.php?tid=260 et à l'activer dans la liste des plugins après avoir placé le fichier phpintpl.php dans le dossier ./inc/plugins de votre forum.
Ce genre de technique peut notamment être utilisé pour distinguer les membres d'un certain groupe privilégié.
Pour commencer, après avoir téléchargé et installé le greffon suscité, rendez-vous dans les templates du thème de votre choix, et ouvrez plus précisément le template "postbit".
Repérez-y l'élément {$post['onlinestatus']}.
Vous allez ajouter après cet élément le modèle suivant :
Code PHP :
<if ($post['DONNEE'] == VALEUR) then><img src="LIEN" alt="NOM" title="NOM"/></if>
- DONNEE : À remplacer par :
- uid : L'icône ne s'affichera que si l'expéditeur du message est celui spécifié par VALEUR.
- usergroup : L'icône ne s'affichera que si l'expéditeur du message appartient au groupe spécifié par VALEUR.
- postnum : L'icône ne s'affichera que si l'expéditeur du message a posté au moins VALEUR messages (attention, vous devrez en revanche remplacer le == par >= dans le code ci-dessus).
- En règle générale, tous les champs de la table mybb_users peuvent être utilisés ici.
- VALEUR : À remplacer par :
- L'ID de l'utilisateur auquel affecter l'icône si DONNEE est "uid".
- L'ID du groupe pour lequel afficher l'icône si DONNEE est "usergroup".
- En règle générale, le nombre de référence.
- LIEN : À remplacer par le lien vers l'image. Elle ne sera pas redimensionnée, veillez donc à utiliser une image carrée de seize pixels de côté.
- NOM : Le nom de l'image, il s'affichera au survol de la souris sur l'image.
Si vous souhaitez paramétrer plusieurs badges, n'hésitez pas à cumuler les codes ci-dessus en les mettant les uns après les autres, tous entre {$post['onlinestatus']} et <br />.
Si vous souhaitez que les icônes s'affichent également pour les personnes utilisant l'affichage "classique" du forum plutôt que l'affichage standard, vous devrez répéter chaque modification apportée au template "postbit" dans le template "postbit_classic".
Pour aller plus loin :
Trouver un identifiant :
- Pour trouver l'identifiant d'un utilisateur, cliquez sur son nom et regardez la fin de l'adresse de sa page de profil : le chiffre après "uid=" représente l'ID de l'utilisateur en question.
- Pour trouver l'identifiant d'un groupe, cliquez sur son nom dans l'administration et regardez la fin de l'adresse : le chiffre après "gid=" représente l'ID de l'utilisateur en question.
- Si vous pouvez utiliser PHPMyAdmin, vous trouverez aisément ces "uid" et "gid" dans les tables mybb_users et mybb_usergroups en regard du nom de l'utilisateur ou du groupe (respectivement).
Les opérateurs :
- == teste l'égalité. L'image ne sera affichée que si la valeur de DONNEE pour l'expéditeur est exactement VALEUR (par exemple, pour un administrateur, "usergroup" égale 4).
- <, <=, > et >= testent respectivement l'infériorité stricte et relative, et la supériorité stricte et relative. L'image ne sera affichée que si la valeur de DONNEE pour l'expéditeur est respectivement inférieure, inférieure ou égale, supérieure et supérieure ou égale à VALEUR (par exemple, pour une personne ayant posté 350 messages, "postnum" est supérieur à 300).
- != teste l'inégalité. L'image ne sera affichée que si la valeur de DONNE pour l'expéditeur n'est pas VALEUR (par exemple, pour un membre non banni, "usergroup" est différent de 7).
Les conditions :
- OR pour "ou" : l'image est affichée si la condition à gauche du mot-clé "OR" est vraie, OU si la condition à droite du mot-clé "OR" est vraie. Si les deux conditions sont remplies, l'image est affichée. Modèle :
Code PHP :
<if ($post['DONNEE1'] == VALEUR1 OR $post['DONNEE2'] == VALEUR2) then><img src="LIEN" alt="NOM" title="NOM"/></if>
- AND pour "et" : l'image est affichée seulement si les conditions à gauche et à droite du mot-clé "AND" sont vraies. Modèle :
Code PHP :
<if ($post['DONNEE1'] == VALEUR1 AND $post['DONNEE2'] == VALEUR2) then><img src="LIEN" alt="NOM" title="NOM"/></if>
Conclusion :
Normalement, ça devrait fonctionner, je prendrai une capture d'écran si l'on m'en demande une ou si j'y pense plus tard ! :p
Je reste à votre disposition si vous avez des questions ou des remarques !
RE: [Tutoriel] Ajouter un icône d'utilisateur dans le "postbit". - Ch00s3r - 28-01-2012
Merci beaucoup !
Bonne soirée.
|