Exercices - Contenus
This content is not available in your language yet.
🎯 Objectifs des exercices
Section intitulée « 🎯 Objectifs des exercices »Ces exercices vous permettent de valider vos acquis sur :
- La création de types de contenu
- L’ajout et la configuration de champs
- Les modes d’affichage
- La gestion des médias
📝 Exercice 1 : Créer le type “Témoignage”
Section intitulée « 📝 Exercice 1 : Créer le type “Témoignage” »Objectif : Créer un nouveau type de contenu pour les avis clients
-
Créez un type de contenu “Témoignage” (
testimonial) -
Ajoutez les champs suivants :
field_author_name: Texte (brut) - Requisfield_author_photo: Média (Image) - Optionnelfield_rating: Liste (entier) avec valeurs 1-5 - Requisfield_testimonial_text: Texte (formaté, long) - Requisfield_date: Date - Requis
-
Configurez le mode d’affichage “Teaser” :
- Photo, Nom, Note, Extrait du texte (50 caractères)
-
Exportez la configuration
💡 Aide : Configuration du champ Rating
Pour le champ field_rating de type “Liste (entier)” :
Valeurs autorisées :
1|★2|★★3|★★★4|★★★★5|★★★★★Widget : Boutons radio
💡 Solution
-
Créer le type :
/admin/structure/types/add- Nom : Témoignage
- Machine name : testimonial
-
Ajouter les champs :
/admin/structure/types/manage/testimonial/fields -
Configurer l’affichage :
/admin/structure/types/manage/testimonial/display- Activer Teaser
- Configurer les champs visibles
-
Exporter :
Fenêtre de terminal drush cex -ygit add config/sync/node.type.testimonial.ymlgit add config/sync/field.*.testimonial.*.ymlgit commit -m "feat: add testimonial content type"
📝 Exercice 2 : Champ “Prix barré”
Section intitulée « 📝 Exercice 2 : Champ “Prix barré” »Objectif : Afficher le prix original barré quand un produit est en promotion
-
Dans la configuration d’affichage du Produit (mode Full)
-
Configurez les champs
field_priceetfield_sale_pricepour afficher :- Le prix soldé en premier (plus grand)
- Le prix original barré (si soldé)
-
Utilisez les classes CSS appropriées (préfixes/suffixes)
💡 Aide
Dans la configuration du formateur de champ :
- Préfixe :
<span class="original-price"> - Suffixe :
</span>
Ou mieux : créez un template Twig personnalisé (Étape 6).
📝 Exercice 3 : Styles d’images pour le responsive
Section intitulée « 📝 Exercice 3 : Styles d’images pour le responsive »Objectif : Créer une configuration d’images responsive
-
Créez 3 styles d’images :
product_mobile: 300×400product_tablet: 450×600product_desktop: 600×800
-
Activez le module Responsive Image :
Fenêtre de terminal drush en responsive_image -y -
Créez un style responsive “Product Responsive”
-
Appliquez-le au champ
field_imagesdu produit
💡 Solution
-
Créer les styles :
/admin/config/media/image-styles -
Créer le style responsive :
/admin/config/media/responsive-image-style/add- Nom : Product Responsive
- Breakpoint group : Responsive Image (ou votre thème)
- Mappings selon les breakpoints
-
Appliquer dans l’affichage :
/admin/structure/types/manage/product/display- field_images > Formateur : Responsive image
- Style : Product Responsive
📝 Exercice 4 : View mode “Mini”
Section intitulée « 📝 Exercice 4 : View mode “Mini” »Objectif : Créer un mode d’affichage minimaliste pour les produits
-
Créez un view mode “Mini” (
mini) -
Configurez-le pour afficher uniquement :
- Image (style thumbnail)
- Titre (lien)
- Prix
-
Ce mode sera utilisé pour :
- Le mini-panier
- Les widgets “Produits liés”
💡 Solution
-
Créer le view mode :
/admin/structure/display-modes/view/add- Nom : Mini
- Type d’entité : Contenu
-
Activer pour Produit :
/admin/structure/types/manage/product/display- Cocher “Mini” dans les modes personnalisés
-
Configurer l’onglet Mini :
- field_images (thumbnail, 100×100)
- title (link)
- field_price
- Tout le reste masqué
-
Exporter :
Fenêtre de terminal drush cex -y
📝 Exercice 5 : Bibliothèque de médias
Section intitulée « 📝 Exercice 5 : Bibliothèque de médias »Objectif : Préparer le contenu média pour TailStore
-
Uploadez au moins 10 images dans la bibliothèque de médias :
- 6 images de produits
- 3 images de slides
- 1 image pour un article de blog
-
Remplissez correctement :
- Le nom de chaque média
- Le texte alternatif
- Les crédits (optionnel)
-
Organisez avec des noms cohérents :
product-dress-black-1slide-women-collectionblog-fashion-trends
💡 Ressources pour les images
Vous pouvez utiliser des images libres de droits depuis :
- Unsplash - Photos HD gratuites
- Pexels - Photos et vidéos
- Freepik - Vecteurs et photos (avec attribution)
Pour TailStore, cherchez :
- “fashion”, “clothing”, “dress”, “t-shirt”
- “women fashion”, “men clothing”
- “accessories”, “jewelry”
📝 Exercice 6 : Créer du contenu de test
Section intitulée « 📝 Exercice 6 : Créer du contenu de test »Objectif : Créer les premiers contenus TailStore
-
Créez 3 produits avec :
- Toutes les informations remplies
- Au moins 2 images par produit
- Prix et prix soldé pour au moins 1 produit
-
Créez 2 articles de blog
-
Créez 3 slides pour le carrousel
-
Vérifiez l’affichage dans les différents view modes
💡 Exemples de produits
Produit 1 : Robe d’été noire
- SKU : DRESS-001
- Prix : 49.99 €
- Prix soldé : 39.99 €
- Matière : 100% coton
- Disponibilité : En stock
Produit 2 : Costume noir homme
- SKU : SUIT-001
- Prix : 199.99 €
- Matière : Polyester, Laine
- Disponibilité : En stock
Produit 3 : Veste en cuir
- SKU : JACKET-001
- Prix : 149.99 €
- Prix soldé : 119.99 €
- Matière : Cuir véritable
- Disponibilité : En stock
🏆 Exercice bonus : Module Devel Generate
Section intitulée « 🏆 Exercice bonus : Module Devel Generate »Objectif : Générer automatiquement du contenu de test
-
Installez le module Devel (si pas déjà fait) :
Fenêtre de terminal composer require --dev drupal/develdrush en devel devel_generate -y -
Générez 20 produits :
Fenêtre de terminal drush genc 20 --bundles=product -
Générez 5 articles de blog :
Fenêtre de terminal drush genc 5 --bundles=blog_article -
Vérifiez dans
/admin/content
💡 Options de Devel Generate
# Générer avec des optionsdrush genc 10 \ --bundles=product \ --languages=fr \ --authors=1 \ --kill # Supprime les contenus existants du type
# Générer des termes de taxonomiedrush gent tags 20
# Générer des utilisateursdrush genu 5✅ Checklist de validation
Section intitulée « ✅ Checklist de validation »Avant de passer à l’Étape 3, assurez-vous de pouvoir :
- Créer un type de contenu avec plusieurs champs
- Ajouter des champs de différents types (texte, nombre, booléen, référence)
- Configurer les modes d’affichage (form display, view display)
- Créer et utiliser des styles d’images
- Utiliser la bibliothèque de médias
- Exporter la configuration des types et champs
🚀 Prêt pour la suite ?
Section intitulée « 🚀 Prêt pour la suite ? »Passez à l’Étape 3 - Taxonomies pour créer les catégories, marques et attributs de vos produits.