Formulaire de contact Github avec jekyll? [fermé]
Je prévois de construire et de déployer un site statique sur github. Si je devais le faire est-il encore possible d'avoir un formulaire de contact?
Il semble que ce soit le seul ensemble de fonctionnalités dynamiques qui va exister sur mon site web particulier.
Devrais-je créer un service ailleurs pour créer le formulaire de contact?
7 réponses
Oui, vous devrez utiliser un service externe. Un excellent service externe pour cela qui ne nécessite aucune inscription et est gratuit pour un maximum de 1000 soumissions par mois est Formspree .
Autres options: formulaire Simple (gratuit), FormKeep (19$ / mois.), & Wufoo (Options Gratuites Et Payantes)
Simple Formulaire semble être une option intéressante pour contourner le site statique aspect de Jekyll.
Wufoo est aussi une bonne option.
La configuration rapide Super simple avec Jekyll consiste à utiliser un service externe comme https://formkeep.com
Précisément. Le résultat (habituel) du processus de compilation de Jekyll est un site statique , donc la seule façon d'avoir une fonctionnalité dynamique est de passer par des services externes.
Par exemple, vous pouvez essayer zappyforms.
Oui, vous avez besoin de quelque chose d'externe pour stocker vos données. Mais les bonnes nouvelles sont que tant de solutions existent là-bas et vous avez juste à choisir le "meilleur" pour vos besoins spécifiques.
Donnez-moi juste l'occasion d'inclure dans le paysage des solutions possibles aussi KVStore.io (avertissement: je suis l'auteur).
Si vous avez assez de temps, je viens de poster un article sur la façon de stocker le contenu généré par l'utilisateur à partir de Pages Jekyll/GitHub ou similaires...
Mais le tl; dr de l'histoire est-ce en utilisant KVStore.io Vous pouvez toujours bénéficier d'un véritable moteur de stockage (avec un ensemble simple et riche D'API RESTful) prenant en charge les "environnements côté client uniquement" comme "pages Jekyll/GitHub" ou toutes les combinaisons que vous aimez..
Mes 2 cents
Si vous voulez créer votre propre formulaire de contact avec, disons PHP par exemple, vous pouvez le faire. Rappelez-vous simplement ces deux choses:
Jekyll copiera tout ce qui n'est pas précédé d'un trait de soulignement ou ignoré verbatim dans le répertoire _site.
Vous pouvez inclure un fichier HTML dans un fichier PHP.
J'utilise une bibliothèque PHP sur mon serveur pour livrer le courrier à partir d'un formulaire de contact HTML créé par Jekyll. Mon problème, cependant, est le manque de côté serveur validation ou notification à l & apos; utilisateur d & apos; une livraison non réussie ou des champs qui n & apos; ont pas été validés. Je préfère ne pas avoir un succès personnalisé.html et échouer.page html pour les réponses.
C'est comme ça que je l'ai contourné.
Ma structure Jekyll ressemble à ceci:
/..
_config.yml
_layouts/
default.html
default-php.html
_includes/
header.html
footer.html
contact-form.html
nav.html
...
about/
index.md => index.html
services/
index.md => index.html
contact/
contact.md => contact.html
index.php (includes contact.html)
Mon contact-form.html
include et default-php.html
layout contiennent tous deux des extraits PHP pour imprimer des variables.
Quand quelqu'un navigue vers www.mysite.com/contact
il va charger index.php
qui contient ma page HTML complète avec des extraits de code PHP à imprimer variable.
En haut de ce fichier PHP, vous pouvez traiter les données $_POST
ou $_GET
de votre formulaire de contact ou renvoyées à partir de votre script de livraison de courrier et imprimer des messages à l'expéditeur ou même ajouter des classes aux champs du formulaire pour indiquer qu'ils ont échoué à la validation.
Un inconvénient est que cela ne se chargera pas dans le serveur local de Jekyll (localhost: 4000).
Peut-être qu'avec un peu de secousses, vous pouvez l'obtenir. Je ne suis pas sûr. Je configure simplement un vhost pour pointer mysite.local
vers /web/root/myjekyllsite/_sites
et cela fonctionne bien.