objet de la contrib
Réaliser une première brique vers un véritable espace privé dédié aux visiteurs enregistrés.
Voici donc une première fonction : L’avatar.
L’Avatar
Pour ce qui est des rédacteurs et des admins, il n’y a pas grand chose à faire, le LOGO des auteurs est là pour ça.
Pour les visiteurs, j’ai le choix :
- Soit je leur permets d’uploader leur avatar et d’utiliser le LOGO des visiteurs (également défini dans l’espace privé pour les visiteurs, il suffit d’en adapter le code), mais si ils sont nombreux, je vais vite me retrouver avec un tas d’images qui vont encombrer mon hébergement.
- Soit, comme cela se fait souvent, je ne leur permets que de proposer l’URL de leur avatar, qu’ils auront préalablement stocké ailleurs.
J’ai choisi cette deuxième option. Mais Spip ne permet pas ça de façon “native”. Alors comment faire ? Et bien, “simplement” en utilisant les champs extra.
Voici la structure des champs extra dont on a besoin (à recopier dans votre fichier ecrire/mes_options.php3 si ce fichier existe chez vous, sinon créer ce fichier à partir du code ci-dessous) :
<?php
$GLOBALS['champs_extra'] = Array (
'auteurs' => Array (
"avatar" =>"ligne|propre|Entrer l'URL de votre avatar"
)
);
$GLOBALS['champs_extra_proposes'] = Array (
'auteurs' => Array (
'tous' => '',
'6forum' => 'avatar'
)
);
?>
En quelques mots : la variable globale ’champs_extra’ est un tableau de tableaux. Chacun des tableaux internes concerne un élement de Spip (auteurs, articles, rubriques...). Ils définissent les propriétés que l’on veut ajouter dans l’élément de Spip.
En l’espèce, ici, on veut ajouter une catégorie ’avatar’ à l’élément ’auteurs’ de Spip. La partie ’ligne|propre|Avatar’ définit la catégorie :
- ligne : c’est la méthode de saisie de la catégorie. Cela veut dire ici que le formulaire (où ensuite on viendra entrer l’URL de l’avatar) est une ligne (un INPUT de type ’text’ dans les forumulaires. Cela peut être un menu déroulant etc...
- propre est la façon d’afficher la saisie (encore un peu obscur pour moi, c’est probablement lié aux filtres de Spip).
- Entrer l’URL de votre avatar est le titre de la catégorie. Il sera affiché avant le champ de saisie.
Voici un exemple du résultat que cela peut donner :
Voilà pour les champs_extra. Mais vous remarquerez qu’il y a une seconde définition de variable globale : champs_extra_proposes. Cette variable permet de régler un peu plus finement l’attribut de la catégorie avatar aux différents types d’auteurs. Le sous tableau auteurs possède deux élément :
- tous=>’’ : Tous concerne tous les type d’auteurs (administrateur, rédacteur et visiteur). On attribue donc rien à tout le monde... Celà permet de ne pas attribuer la catégorie avatar aux admins et aux rédacteurs (qui ont pour eux la rubrique LOGO, je le rapelle).
- ’6forum’=>’avatar’ : c’est là que l’on attribue la catégorie ’avatar’ au visiteur du site (nom de code pour Spip : 6forum)
ATTENTION : Si vous avez déjà des champs extra pour les auteurs, faites en sorte que vos définitions restent compatibles avec celles-ci. En particulier, dans champs_extra_proposes la ligne ’6forum’ REMPLACE l’ordre de ’tous’ et ne vient pas s’ajouter à lui (comme je le pensais dans un premier temps).
Un exemple, admettons que vous ayez déjà défini un champ ’image_de_mon chat’ pour les auteurs pour un site dédié aux minous. Vous voulez attribuer cet extra à tous les auteurs, donc vous faites un ’tous’=>’image_de_mon_chat’. Si la deuxième ligne est simplement ’6forum’=>’avatar’, le visiteur abonné au forum (6forum) va perdre l’extra ’image_de_mon_chat’ ! Pour que le visiteur puisse avoir les deux extras, il faut la ligne : ’6forum’=>’image_de_mon_chat|avatar’.
De façon générale, si vous commencez à jouer avec les réglages fins des extra, faites attention de bien attribuer tous les extras à chacune des catégories que vous voulez (en les séparant de la barre verticale |)
Au total, nous avons, dans champs_extra, créé une nouvelle catégorie nommé ’avatar’, et nous ne l’avons attribué qu’aux visiteurs dans la variable champs_extra_proposes.
Voilà, la création de la catégorie est finie, reste à la remplir. La page profile est là pour ça. C’est l’objet de l’article suivant
Discussions par date d’activité
2 discussions
C’est quoi un avatar ? Une courte explication serait bienvenue, avant de se payer toute la contrib pour essayer de comprendre...
l’avtar est juste une image associée à l’utilisateur
Répondre à ce message
Pourtant, la signature peut tout à fait être gérée via un extra signature.
La question, c’est comment font les visiteurs pour changer leur signature (et leur avatar) ?
Exact pour la signature... Disons que, comme je trouve que les signatures nuisent à la lisibilité des forums, je préfère ne pas en mettre ;)
Pour ce qui est de la modification de la signature et de l’avatar, si je ne me trompe pas, c’est l’objet de l’article suivant, ici
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |