SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribs sur SPIP-Zone, 263 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

  • Metas +

    3 décembre – 10 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

  • Newsletters

    16 janvier 2013 – 378 commentaires

    Ce plugin permet de composer des Info-lettres. Par info-lettre, on désigne ici le contenu éditorial qui va être composé et envoyé par courriel à une liste d’inscrits. Le plugin permet de composer une info-lettre à partir d’un modèle pré-composé, (...)

  • Mode portail Communiquant pour SoyezCréateurs

    29 septembre 2010 – 20 commentaires

    5e mode d’affichage de la page d’accueil, ce mode se distingue des autres par une animation proposant un fondu/enchaîné des logos des articles à la une. Zonage Configuration Zone d’entête Nom du site Slogan si plugin bandeau présent (...)

  • Configurer Sparkpost

    25 avril – 14 commentaires

    N’hésitez pas à relire le préambule de cette rubrique avant de créer un compte sur une plateforme tierce . Présentation Sparkpost est une société d’envoi de mailing https://www.sparkpost.com/ Sur les petits volumes ( <100.000 emails / mois), (...)

  • Plugin Logo SVG : pouvoir utiliser des logos SVG

    17 octobre – commentaires

    Le SVG est un format vectoriel donc très léger et redimensionnable sans pertes, mais SPIP ne l’acceptait pas sur les logos. Ce plugin comble ce manque. Comment ça fonctionne ? Vous installez ce plugin, vous l’activez, et c’est tout. Crédits Une (...)

Ça spipe par là