SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 227 visiteurs en ce moment

Accueil > Améliorations de l’espace privé > Champs extra > Un site web d’anciens élèves grâce aux Champs Extras

Un site web d’anciens élèves grâce aux Champs Extras

31 octobre 2011 – par elm31rugby

7 votes

Ceci est une « contribution pédagogique », qui montre par l’exemple comment développer une nouvelle fonctionnalité pour SPIP.

J’ai réalisé un site pour une association d’anciens élèves, avec une dimension un peu "communautaire". Même si, dès le début, j’avais bien précisé que je ne voulais pas ré-inventer Facebook, nous avons néanmoins mis en place certaines fonctionnalités qui pourraient être utiles à d’autres, pour des sites semblables.

Il existe des plugins pour Association, mais ils ne faisaient pas exactement ce que nous voulions, tout en présentant des fonctionnalités dont nous n’avions pas besoin. Donc, ... j’ai trouvé plus simple de mettre en place notre propre produit, dont le principe est décrit ci-dessous.

Présentation

faire un site sur lequel les anciens élèves :

-   peuvent s’inscrire
-   peuvent remplir une fiche personnelle
-   peuvent modifier leur fiche personnelle (sans qu’elle soit modifiable par un petit camarade, cela s’entend...)
-   s’ils sont connectés, peuvent voir la liste des membres de l’association
-   peuvent faire une recherche (rechercher tous les anciens qui habitent la même ville, ou qui ont fait les mêmes études après le lycée, etc)

Rem : Il y avait initialement d’autres conditions, entre autre sur le paiement en ligne de la cotisation. Ensuite, pour se connecter, il fallait s’assurer que l’ancien élève était à jour de sa cotisation. Pour l’instant, cette clause du cahier des charges a été abandonnée.

Pour réaliser ce cahier des charges, j’ai besoin :

-   du plugin Champs extra 2
-   du plugin Interface pour champs extras.

Installez ces deux plugins, en suivant au besoin les instructions pour installer un plugin. Les spécificités de Champs extras et Interface pour champs extras sont bien décrites dans leur page sur Spip-Contrib (entre autre, besoin d’installer les plugins Bonux et Saisies)

1. Configuration

La fiche de chaque élève

Pour réaliser la fiche de chaque élève, nous allons modifier grâce aux champs extras le formulaire « auteur ».

Pour ajouter un champ :

-   cliquez sur « Configuration » : vous voyez s’afficher l’écran suivant

-   cliquez sur « Champs extras » et suivez la procédure classique pour ajouter un champ.

-  Répétez l’opération pour chaque champs de votre formulaire, tel que vous voulez que votre fiche "élève" soit configurée.

Une fois tous vos champs ajoutés, en fonction du formulaire que vous souhaitez, vous devriez avoir une liste de champs extras qui ressemble plus ou moins à cela :

Comme vous le voyez, presque tous mes champs sont de type « ligne », sauf deux, qui sont de type « Bloc » (les deux champs pour lesquels l’ancien élève a le plus de choses à dire, son « cursus universitaire », et son « Etat civil »)

Vérifiez, dans l’espace privé, que votre fiche "Auteur" est bien modifiée en conséquence.

Une fois que la fiche Auteur est prête, passons à la configuration de notre site

Recherche dans les champs extras

Pour ce qui est de la recherche, j’ai longtemps cherché (c’est le cas de le dire) jusqu’à trouver que, dans la définition des champs extras, on peut décider de l’inclure ou non dans une recherche... Donc, si cette fonctionnalité vous intéresse, ne l’oubliez pas.

Configuration du site :

Vous voulez permettre l’inscription de visiteurs sur le site public, mais vous ne souhaitez pas qu’ils accèdent au site privé. Ce sont des visiteurs, pas des rédacteurs. N’oubliez pas de configurer votre site en conséquence, c’est à dire :

Bouton "Configuration", onglet "Interactivité" :

-  Refusez l’inscription automatique des nouveaux rédacteurs.
-  Acceptez l’inscription de visiteurs du site public.

2. Les squelettes

Tout d’abord, créez deux rubriques :

-  une rubrique intitulée "Fiche Personnelle"
-  une rubrique intitulée "Membres"

REM : Comme je voulais que ces rubriques apparaissent dans ma liste des rubriques sur le site public, j’ai créé dans chacune d’entre elles un article vide.

Voici le code de la rubrique "Fiche Personnelle"

  1. [(#SESSION|oui) <p>Vous êtes authentifié,<a href='#URL_LOGOUT'>cliquez ici pour vous déconnecter</a></p>
  2. <p>... ici le contenu en accès restreint, réservé aux membres de l'Association des Anciens de Hautefeuille</p>
  3. <p>Les champs marqués d'un &laquo;&nbsp;*&nbsp;&raquo; sont obligatoires</p>
  4. #FORMULAIRE_EDITER_AUTEUR{#SESSION{id_auteur}}]
  5. [(#SESSION|non)<p class="restreint">Cette partie est en accès restreint. Pour accéder à votre fiche personnelle, connectez-vous. Si vous n'êtes pas inscrit, allez sur la page <a href="#URL_PAGE{page_inscription}">Inscription</a> pour recevoir votre mot de passe]

Télécharger

-  si le visiteur est logué, il accède à sa fiche, grâce à #SESSIONid_auteur (et donc, il n’accède pas à la fiche du voisin)
-  s’il n’est pas logué, on lui dit de le faire
-  et on précise que, s’il n’est pas inscrit, il doit passer par le formulaire d’inscription pour recevoir son mot de passe et pouvoir se loguer.

Voici maintenant le code pour la liste des membres

  1. [(#SESSION|oui) <p>Vous êtes authentifié,
  2. <a href='#URL_LOGOUT'>cliquez ici pour vous déconnecter</a></p>
  3. <p>Vous êtes connecté. Voici la liste des membres de l'Association des Anciens de Hautefeuille.</p>
  4. <p><em><small>Les adresses mail sont filtrées, pour éviter d'être spammées</small></em></p>
  5. <h3><img src="#DOSSIER_SQUELETTE/img/list.png" alt="liste des membres de l'association des anciens de Hautefeuille" />Liste des membres de l'Association des Anciens de Hautefeuille</h3>
  6. #FORMULAIRE_RECHERCHE
  7. <INCLURE{fond=./boucle/inc-boucle_auteurs}>]
  8. [(#SESSION|non)<p class="restreint">Cette partie est en accès restreint. Pour accéder à votre fiche personnelle, connectez-vous. Si vous n'êtes pas inscrit, allez sur la page <a href="#URL_PAGE{page_inscription}">Inscription</a> pour recevoir votre mot de passe]

Télécharger

Même principe : si l’élève n’est pas logué, on lui dit de le faire, etc.

Pour avoir la liste des membres, je fais une boucle "Auteurs", triée par "nom_de_famille", (qui est le titre de mon champs extra correspondant au nom de famille de l’élève), et dans la boucle, j’utilise les balises de mes champs extras : #PROMOTION, #VILLE, etc. Tout cela est décrit dans la page consacrée à l’utilisation de Champs Extras.

Cette boucle "Auteurs" est placée dans un squelette à part, que j’appelle dans ma balise #SESSION. Le squelette s’appelle inc-balise_auteurs.html, et il est placé dans le sous-répertoire "boucle".

REM : j’utilise la lame du Couteau Suisse qui empêche que les adresses mails soient spammées.

Enfin, pour la première inscription, j’ai créé une page "page_inscription", dans laquelle je place la balise #FORMULAIRE_INSCRIPTION.

Le visiteur s’inscrit, reçoit son mot de passe, et dans le courrier de confirmation d’inscription, nous encourageons la personne à compléter sa fiche personnelle.

Dernière modification de cette page le 31 octobre 2011

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • CleverMail

    20 janvier 2010 – 635 commentaires

    CleverMail est un plugin permettant d’envoyer des lettres d’informations à des abonnés depuis SPIP. Issu au départ d’un développement libre complètement indépendant de SPIP, il a connu une première version pour SPIP 1.9 avant d’être complètement réécris (...)

  • SPMC : Squelette par mot clé V2.0

    21 septembre 2009 – 48 commentaires

    Ce plugin prend la suite de squelette par mot clef V1.92 qui ne fonctionnait plus sous SPIP 2.0.x. Avec l’accord de Mortimer qui n’a plus le temps de le maintenir, je prend donc la suite. Présentation du plugin « Squelette par mot clé V2.0 » Le (...)

  • Sarka-SPIP 3

    15 septembre 2009 – 211 commentaires

    Si la lignée 3 de Sarka-SPIP a été l’occasion de refaire presque entièrement le code du squelette elle continue à évoluer et à s’améliorer au fil des versions. Nous ne saurions trop conseiller aux nouveaux utilisateurs - et aussi aux anciens - (...)

  • Paiement avec Formidable

    16 février 2015 – 53 commentaires

    Ce plugin « Paiement avec Formidable » permet d’ajouter une étape de paiement à la fin de la saisie d’un formulaire créé par le plugin Formidable. Il le complète et nécessite par ailleurs le plugin bank qui gère l’interface technique avec les prestataires (...)

  • Spip2Spip

    21 février 2008 – 159 commentaires

    Spip2spip permet de synchroniser le contenu de plusieurs sites SPIP entre eux en étendant le principe de la syndication thématique. Les articles d’un SPIP sont récopiés d’un site à l’autre en conservant leur formatage (...)

Ça spipe par là