Pour certains sites j’avais besoin de beaucoup d’infos concernant les utilisateurs... Fervent utilisateur et défenseur de SPIP que je suis, j’ai donc commencé à écrire un plugin me permettant de palier aux manques de champs dans la gestion des auteurs.
Attention : ce plugin ne fonctionne qu’avec une version svn (de développement) de spip et sera utilisable pour les versions stables qu’à partir de la 1.9.2...
2Les Objectifs pour la version 1 :2
Avoir dans la base de donnée plusieurs nouveaux champs. // FAIT
Avoir à disposition une série de balises SPIP pour utiliser ces champs dans le site. // FAIT
Modifier l’espace privé de spip afin de pouvoir compléter ces champs facilement. // FAIT
Créer un formulaire accessible de la partie publique du site pour que les utilisateurs puisse remplir eux-mêmes ces infos.
Tant qu’à faire autant qu’il soit internationnalisé. // FAIT
que le plugin puisse se désinstaller proprement.
2Son fonctionnement :2
Les champs suivants sont créés automatiquement à la première modification d’un auteur dans l’interface privé :
Nom de famille
Prénom
Organisation / Entreprise / Association
L’Url de l’Organisation / Entreprise / Association
Telephone
Fax
Skype
Adresse
Codepostal
Ville
Pays
Latitude
Longitude
Les balises suivantes sont donc disponibles :
#NOM_FAMILLE
#PRENOM
#ORGANISATION
#URL_ORGANISATION
#TELEPHONE
#FAX
#SKYPE
#ADRESSE
#CODEPOSTAL
#VILLE
#PAYS
#LATITUDE
#LONGITUDE
Ces champs sont modifiables dans l’interface privée gràce à l’ajout d’un second formulaire avec son bouton d’accès particulier sur les pages du type :
http://domaine.tld/ecrire/?exec=aut...
Où XX est l’ID de l’auteur à modifier
Les modifications sont automatiquement mise à jour et automatiquement visibles....
UPDATE 08/10/2006 : Il est possible dorénavant d’afficher un formulaire dans la partie publique permettant au visiteurs de modifier leurs profils eux mêmes.
ATTENTION : cette partie nécessite le plugin "BALISE SESSION".
Il suffit de rajouter un lien comme celui-ci <a href="#URL_PAGE{profil}&id_auteur=[(#SESSION{id_auteur})]">Modifier votre profil</a>dans n’importe quel morceau de squelette.
2Problèmes de la version actuelle...2
Le plugin n’est pas encore désinstallable proprement.
J’ai du, afin de pouvoir enregistrer les nouveaux champs en même temps que les champs préexistants faire un fork complet de la page ecrire/exec/auteur_infos.php car en utilisant un pipeline, je ne pouvais insérer mes nouveaux champs dans les fonctions préexistantes...
C’est un problème très important car si le fichier en question est modifié par les développeurs de spip, il risque d’y avoir des incompatibilité importantes...
Si quelqu’un a une idée sur la manière de réaliser ceci plus proprement... Je le lirai/écouterai volontier.
2TO DO liste2
Traduire la chose en anglais et espagnol au moins.
UPDATE 08/10/06 - Faire un formulaire utilisable depuis l’interface publique du site (sous 2/3 jours)
UPDATE 20/10/06 - Éviter de forker tout le fichier auteur_infos.php.
2Où et comment ça se passe?2
Les dernières version des fichiers sont disponibles sur le serveur svn de spip-zone par là :
http://trac.spip.org/trac/spip-zone/browser/_plugins_/_dev_/auteurs_complets
ou en archive tar.gz en bas de cet article (attention, il se peut que cette version ne soit pas la dernière en date.
Il vous suffit de copier ces fichiers ou de décompresser l’archive dans un répertoire /plugins à la racine de votre site et de l’activer dans l’interface d’admin dédiée de l’interface privée.
Vous avez des idées d’amélioration, des questions... laissez un commentaire ou contactez moi par mail...