SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribs sur SPIP-Zone, 264 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 ?
  • [Se connecter]

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

  • Mailshot

    16 janvier 2013 – 254 commentaires

    Ce plugin prend en charge l’envoi en nombre d’info-lettres par email. Mailshot permet l’envoi en nombre d’emails au moyen d’un SMTP (ou d’un service externe) dédié à cet effet. Il permet de limiter la cadence d’envoi. Enfin, ce plugin implémente la (...)

  • bigfoot

    16 juin 2015 – 56 commentaires

    Un plugin qui facilite l’utilisation des notes de bas de page en les affichant dans des infobulles à l’aide d’un peu de javascript. Le constat de l’auteur du script : Les notes de bas de page sur le web sont une plaie. Tu dois d’abord essayer de (...)

  • SkelEditor 2.0

    1er mars 2010 – 74 commentaires

    La version remaniée et enrichie du plugin, pour SPIP 2.1, qui vous permet d’éditer votre squelette directement en ligne sans passer dans le FTP Ce plugin vous permet d’éditer les fichiers du squelette courant depuis l’interface privé. Cela peut (...)

  • CKeditor 3.0

    4 octobre 2009 – 1218 commentaires

    CKeditor est l’évolution de l’éditeur WYSIWYG : FCKeditor, avec ce plugin vous pourrez utiliser cet éditeur à la place de l’éditeur de spip tout en laissant le choix à vos auteurs de l’éditeur qu’ils préfèrent utiliser. Attention : cet éditeur WYSIWYG (...)

  • GIS 4

    11 août 2012 – 1344 commentaires

    Présentation et nouveautés La version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles (...)