Dans ce didacticiel, on remplit un site Wagtail cloné vide de contenu.
Lors du clonage de notre site sur un serveur, tous les modèles, formulaires et logique sont là, mais la base de données est toujours vide. Dans de nombreux cas, il y aura une sauvegarde d'une version existante ou antérieure du site pour remplir la base de données. Dans ce didacticiel, cependant, on va rapidement récapituler et documenter les étapes de tous nos didacticiels précédents pour le faire manuellement. Notre site est un site Wagtail multilingue, configuré avec Wagtailtrans, avec un menu de navigation fait sur mesure et un commutateur de langue et une page de contact construite avec un générateur de formulaire de Wagtailstreamforms.
Il n'y aura pas de nouveau code, tout se fait dans l'éditeur. Voici les étapes. Avant de commencer, on doit vérifier si le problème de compatibilité de Wagtailstreamforms est résolu; sinon, fourchez le référentiel ou modifiez le code et documentez-le bien.
Si vous avez suivi un tutoriel précédent, on commence là où on s'est arrêté: allez sur le serveur, entrez dans l'environnement virtuel et tapez
python3 manage.py runserver 0.0.0.0:8000
et dans votre navigateur, visitez l'adresse IP de votre site sur le port 8000
, dans notre cas http://165.22.199.4:8000
. Accédez à l'admin Wagtail.
Dans admin, allez dans Paramètres / Langues et ajoutez toutes les langues
Allez dans Pages, cliquez sur l'icône de la maison en haut pour arriver à la racine, cliquez sur 'Ajouter une sous-page' et choisissez le modèle de 'Translatable Site Root Page' pour créer une nouvelle racine. Ajoutez un titre (par exemple, 'Translatable Root') et publiez. Allez dans Paramètres / Sites, cliquez sur le site actuel (qui par défaut devrait être appelé localhost
, mais que vous pouvez renommer), et choisissez comme 'Root Page' la page racine traduisible nouvellement créée. Enregistrez et revenez à Pages, supprimez la page d'accueil (qui était la précédente 'Root Page').
Allez dans Pages et choisissez la page 'Translatable Root', cliquez sur Ajouter une sous-page et sélectionnez le modèle de page d'accueil ('Home Page'). Tapez un titre et une introduction. Allez dans l'onglet Promotion et changez le slug en /en/
(ou quelle que soit votre langue par défaut) et publiez. Traduisez les pages d'accueil dans les autres langues, changez les slugs respectifs dans les codes de langue respectifs et publiez.
Accédez aux images, cliquez sur Ajouter une image et sélectionnez toutes les images de votre ordinateur que vous souhaitez ajouter.
Ajoutez une sous-page à la page d'accueil et choisissez le modèle ArticleIndexPage
. Tapez un titre et une introduction et publiez. Créez une ArticlePage
comme sous-page et ajoutez du texte, des images, des vidéos intégrées, etc. Ajoutez d'autres pages d'articles. Accédez à la page d'accueil et ajoutez-y la page d'index des articles. Répétez cette opération pour les pages d'accueil dans d'autres langues.
Accédez aux Blocs (Snippets), cliquez sur Themes, puis sur Ajouter un thème, ajoutez des thèmes et enregistrez. Allez dans Pages, créez un ThemeIndexPage
et des ThemePage
s pour chaque thème, ajoutez des images et du texte. Accédez à la page d'accueil et ajoutez-y la page d'index du thème. Répétez cette opération pour les pages d'accueil dans d'autres langues. Accédez à l'admin Django à http://165.22.199.4:8000/django-admin/
, cliquez sur Themes et ajoutez les traductions des thèmes dans toutes les langues.
Allez dans Blocs, cliquez sur Menus et créez les menus Main
, Account
, Language
avec leurs URL, pages, images, sous-menus respectifs. Accédez à l'admin Django pour les traduire.
Allez sur Pages, ajoutez des pages de texte pour la déclaration de cookie, politique de confidentialité. Accédez aux Blocs et créez un menu de pied de page avec ces éléments. Toujours dans Blocs, ajoutez un logo d'entreprise.
Accédez à Streamforms, ajoutez un formulaire de contact. Dans l'onglet Avancé, ajoutez une adresse de destination. Allez dans Pages, créez une page de contact. Ajoutez-le au menu principal.
Commentez cet article (connectez-vous d'abord ou confirmez par nom et email ci-dessous)