e-carte SPIP, carte postale virtuelle

All contributions published for previous SPIP versions

Entièrement multilingue Tout visiteur sur votre site peut écrire une carte postale virtuelle destinée à un ami. Celui-ci recevra un e-mail l’avertissant que xx lui a écrit une carte, et qu’elle attend d’être consultée à l’adresse http://www.monsite.cometc.

Introduction

Cette contrib a pour but la promotion de votre site de manière ludique ... vous faire connaître, augmenter votre trafic.

C’est une adaptation d’un script sous licence GNU General Public License.
Vous trouverez le script d’origine à cette adresse : openconcept.ca

Vous pourrez très bientôt venir consulter cette e-carte postale virtuelle “en live” sur mon site http://www.inparis.info (en cours de construction au moment de la sortie de cette contrib).

Installation (environ 5 mn temps de téléchargement inclus)

1- téléchargez et décompressez le zip

  • téléchargez l’un des deux zip selon que vous avez installé la version officielle de spip en .php3 ou une version en .php pour ceux dont les hébergeurs ne supportent plus le .php3 (c’est mon cas) Décompressez le zip

2- upload dans le dossier “www” ou “web” de votre site

  • racine de votre site
    • à la racine de votre site spip uploadez le contenu du dossier (et pas le dossier lui-même) upload
    • à la racine de votre site uploadez le dossier lui-même (avec son contenu) lacartespip
    • super important : grâce à votre logiciel de ftp, réglez le CHMOD de www/lacartespip/cardfile.txt à 666. Si vous ne le faites pas ... vous allez vous retrouver avec des messages d’erreur partout et rien ne marchera.
  • dossier IMG
    • dans votre dossier IMG uploadez le dossier lui-même (avec son contenu) carte

3- mise en service

  • créez un lien vers votre “service de cartes postales” depuis n’importe quelle page de votre site en incluant pour la version php :
    <a href="send.php?lang=#LANG"><multi>Postcard[fr]Carte Postale[de]Postkarte[en]Postcard[es]Postal[it]Cartolina[ja]郵便はがき[nl]Postkaart[pt]Cart&atilde;o[ru]Открытка[zh]明信片</multi></a>

    pour la version php3 :

    <a href="send.php3?lang=#LANG"><multi>Postcard[fr]Carte Postale[de]Postkarte[en]Postcard[es]Postal[it]Cartolina[ja]郵便はがき[nl]Postkaart[pt]Cart&atilde;o[ru]Открытка[zh]明信片</multi></a>
  • et c’est fini !
  • prévu pour les tous débutants, ce script est livré déjà inclus dans des pages spip (squelettes par défaut). Vous n’avez donc pas à l’intégrer dans des pages que vous auriez à créer.
  • Ceci dit, rien ne vous empêche bien entendu de copier / coller les portions de script dans vos pages personnalisées.

Pré-requis

-  vous utilisez spip ... :-)
-  la fonction “générer automatiquement des vignettes” lors de l’inclusion des images sous la forme documents dans vos articles se fait correctement.
-  vos vignettes font de préférence 150 px maxi (taille proposée par défaut), si elles sont plus grandes, il vous faudra très probablement retoucher la feuille carte_postale.css
-  vous êtes chez un hébergeur avec une fonction mail activée.

Le principe sous spip en images

1- Choisir son image, fichier send.html/php

01 choisir son image
01 choisir son image


-  ce sont en fait les vignettes générées par spip quand vous ajoutez une image par la fonction “ajouter un document” lors de la réaction de vos articles
-  elle sont issues de l’ensemble de vos articles
-  elles sont proposées de façon aléatoire et il suffit de cliquer sur le bouton pour les changer si on ne trouve pas son bonheur dans les 8 proposées.
-  pour les étourdis et distraits qui oublieraient d’en choisir une, la première est sélectionnée par défaut.

2- Entrer les coordonnées et composer son message, fichier send.html/php

02 rédiger son message
02 rédiger son message


-  se passe de commentaire,
-  juste un cependant, tous les champs sont requis.

3- Validation, fichier send.html/php

03 valider ou recommencer
03 valider ou recommencer


-  possibilité de tout effacer ou valider
-  l’envoi ne se fait qu’après visualisation de la carte sous son format “définitif”

4- Visualisation, fichier send_it.html/php

04 prévisualisation de la carte
04 prévisualisation de la carte


-  a ce stade, on peut toujours soit choisir d’envoyer, soit choisir de revenir en arrière et corriger.
-  vous noterez que quand la carte est trop longue, une scroll bar se crée automatiquement à droite, permettant de ne pas déformer affreusement le cadre.

5- Accès à la consultation, fichier receive.html/php

05 accès à la consultation en ligne
05 accès à la consultation en ligne

Le destinataire reçoit dans son mail au choix 2 url,
-  l’une (ci-dessus) vers receive.php?lang=xy où il lui faut entrer le n° de sa carte postale et le mot de passe qui lui sont indiqués dans le mail
-  l’autre (ci-dessous) vers receive_it.php?lang=xy&viewcard=0&random=00 où il arrive en ce cas (sans passer pas la case départ) tout de suite à la capture suivante :

6- La carte en consultation en lignefichier receive_it.html/php

06 la carte en ligne
06 la carte en ligne


-  avec possibilité de répondre
-  et / ou de visiter votre site.

Compatibilité navigateurs

PC Mozilla Firefox
PC Netscape 7.2
PC Explorer 6

Contenu du pack “ecarte.zip”

à droite après la flèche, leur destination, à lire comme “doit être mis dans”)

  • dossier upload
    • send.html -> racine de votre site
    • send.php -> racine de votre site
    • send_it.html -> racine de votre site
    • send_it.php -> racine de votre site
    • receive.html -> racine de votre site
    • receive.php -> racine de votre site
    • receive_it.html -> racine de votre site
    • receive_it.php -> racine de votre site
    • carte_postale.css -> racine de votre site
  • dossier lacartespip -> racine de votre site
    • cardfile.txt
  • dossier carte -> dossier IMG
    • tampon.gif
    • timbre.gif

Sécurité

-  mot de passe un mot de passe est requis pour visualiser les cartes, il est de 4 chiffres (aléatoires)
-  le code php est désactivé dans les messages, vous ne risquez donc pas de subir de malveillance et de téléchargement de code à l’insu de votre plein grès :-)
-  htaccess et htpasswd si le fichier cardfile.txt qui contient les données des cartes enregistrées vous est livré dans un dossier à part, c’est pour vous permettre, en toute tranquilité, de mettre un .htaccess et un .htpasswd dans ledit dossier. Ainsi, votre fichier cardfile.txt ne sera pas consultable en tapant son adresse http://www.monsite.com/lacartespip/cardfile.txt. Pour en savoir plus sur .htaccess et un .htpasswd, allez faire un tour sur la page suivante : Toulouse Renaissance
-  CNIL petite note au passage sur vos devoirs : si vous utilisez cette contrib et habitez la France, vous devez enregistrer votre site à la CNIL. En effet, tout site (perso ou pas) recceuillant des données personnelles qui peuvent permettre d’identifier une personne (et les e-mails en sont) doivent obligatoirement faire l’objet d’une déclaration à la CNIL. Ne vous inquiétez pas, ça prend très peu de temps et c’est très facile : ici : formulaire pour déclaration en ligne , ici : page générale de l’obligation légale de la déclaration. Si vous n’utilisez pas ce script, mais que vous permettez l’enregistrement de rédacteurs, ou plus simplement, obligez les visiteurs à laisser leur e-mail dans les forums de votre site, cette déclaration est tout de même obligatoire.

FAQ

  • comment faire pour régler le CHMOD ?
    • une fois le dossier “lacartespip” uploadé par un logiciel ftp à la racine de votre site, ouvrez-le.
    • cliquez avec le bouton droit de la souris sur “cardfile.txt” et sélectionnez “propriétés” ou “settings”. Entrez 666 et validez.
  • j’ai pas de logiciel ftp
  • mon site n’est qu’en français et pas multilingue, que dois-je changer dans l’installation et la mise en service ?
    • rien, absolument rien, cette contrib marchera sans problème
  • est-ce que j’ai le droit de modifier et redistribuer ce script ?
    • bien entendu.
    • merci cependant de ne pas supprimer les informations relatives à son créateur, en tête de chaque portion de script
  • heu, j’ai pas d’article avec images
    • vous reste plus qu’à en créer un.
    • un seul article contenant 8 images suffit.
    • attention cependant, téléchargez les images par la fonction “ajouter un document” et pas par la fonction “ajouter une image” ... la génération de vignettes ne se ferait pas.
  • ok ok, mais jusque là je ne “générais” aucune vignette, alors comment je fais ?
    • allez dans votre espace privé
    • configuration du site / fonctions avancées / Génération de miniatures des images
    • cochez “Générer automatiquement les miniatures des images.”
    • choisissez gd1 ou gd2 ou convert en cliquant sur l’une des images
    • choisissez pour “Taille maximale des vignettes générées par le système” 150 pixels
    • validez vos choix
  • je veux que la carte ne prenne des images que de certains articles
    • vous devez éditer le fichier sent.html et modifier les
      “BOUCLE_generer_image_incluse_cheked” et “BOUCLE_generer_image_incluse” et préciser id_article=xx|xx|xx|xx, en remplaçant les xx par vos numéros d’articles, exemple :

<BOUCLE_generer_image_incluse_cheked(DOCUMENTS){0,1}{doublons}{extension==jpg|png|gif}{mode=document}{par hasard}{id_article=xx|xx|xx|xx}>.

N’oubliez pas de modifier aussi la deuxième boucle :

<BOUCLE_generer_image_incluse(DOCUMENTS){1,7}{doublons}{extension==jpg|png|gif}{mode=document}{par hasard}{id_article=xx|xx|xx|xx}>

  • j’ai mes squelettes dans un dossier à part
    • installez tout comme indiqué en “Installation”, et mettez simplement tous les fichiers .html dans le dossier où vous stockez vos autres squelettes.
    • vous n’avez rien d’autre à changer

Modifications par rapport au scrip de départ

  • compatibilité avec spip et le multilinguisme, quelle que soit la langue de votre visiteur, il créera et / ou visualisera sa carte dans sa langue (dans la limite les langues proposées par spip)
  • les icones “txt” etc qui ne sont pas des images miniatures n’apparaîtront pas dans les images disponibles pour la création de la carte
  • le design est entièrement revu pour donner vraiment en résultat un visuel “carte postale” et pour guider au mieux le visiteur dans toutes les étapes de la création de l’envoi et de la réception de sa carte
  • tous les fichiers étaient construits avec des tables, ils sont maintenant entièrement en DIV / CSS
  • insertion de divers boutons permettant de revenir en arrière (en conservant les informations saisies)
  • création du bouton “changer images” pour le cas où les images ne conviendraient pas au visiteur
  • tous les champs de rédaction du message sont requis (ça supprime un bug)
  • les champs sont pré-remplis quand on clique sur “répondre à ce message”, les email et noms expéditeurs et destinataires sont déjà remplis. Idem quand un expéditeur décide d’envoyer une autre carte, sont nom et son e-mail sont déjà remplis.
  • le caractère " est supprimé des messages (correction de bug)
  • la vérification de la validité des e-mail est plus poussée
  • création d’un message d’avertissement pour le cas de saisie d’un numéro de carte qui n’existe pas
  • création du dossier “lacartespip” qui contient cardfile.txt pour l’installation plus aisée de .htaccess et .htpssword
  • présélection de la première image par défaut pour les distraits
e-carte pour spip en php3
e-carte pour spip en php
  • En tout premier lieu, je remercie très sincèrement les créateurs de spip, ainsi que tous ceux qui proposent des contribs et les mettent gracieusement à la disposition de la communauté.
  • Cette contrib est voulue très détaillée, très explicative et totalement prête à l’emploi pour permettre à tous les utilisateurs de spip, même les tous débutants, de l’utiliser.
  • Toutes les inclusions des balises “multi” pour traduire les textes qui ne sont pas dispos dans les fichiers de langue de spip ont été réalisées avec un traducteur automatique. Je parle quelques langues et j’ai pu corriger certaines traductions “malheureuses” mais pas 10 langues (j’ai beaucoup perdu en japonais, chinois et russe par exemple :-)), donc si vous trouvez des erreurs ou si vous avez des langues à ajouter, ce serait bien d’en faire profiter la communauté en postant vos corrections et / ou ajouts ci-dessous dans le forum.
  • Je ne me suis mise au html qu’il y a un an environ, à spip un peu moins, et m’intéresse vraiment au php depuis 1 semaine ... donc si vous trouvez des erreurs de code ou du code à alléger ... bienvenue :-)
  • Evolutions envisagées pour cette contrib :
    • mail d’avertissement à l’expéditeur de la carte pour lui signaler que son destinataire l’a lue
    • suppression automatique des cartes lues depuis X jours
    • mail automatique aux destinataires qui n’ont pas lu leur carte, pour leur signaler qu’elle sera effacée dans x jours
    • choix du timbre
    • probable passage vers mysql et importation du fichier cardfile.txt pour ne perdre aucune carte
  • mais en attendant que j’ai le temps et que je sois plus avancée en php pour coder tout ça ... si certains d’entre vous se sentent le courage et l’envie de coder ...

updated on 2 October 2019

Discussion

Aucune discussion

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom