Structure d'un thème
Un gabarit par type de page
| Fichier | Adresse | Page |
|---|---|---|
templates/index.html | / | Accueil |
templates/category.html | /c/homme/chaussures | Catégorie (sous-catégories, filtres, tri, pagination) |
templates/product.html | /p/12-pull-marin | Fiche produit (galerie, variantes, caractéristiques) |
templates/search.html | /recherche?q= | Résultats de recherche |
templates/cart.html | /panier | Panier (contient <div data-dc-cart-page>) |
templates/account.html | ?account=login… | Connexion, inscription, espace client |
templates/page.html | /pages/livraison | Pages libres du commerçant |
templates/404.html | — | Page introuvable |
Le squelette
layout/theme.html enveloppe chaque page. Il doit contenir {% davcode_head %} dans le <head> (titre, SEO, données structurées, variables CSS des réglages), {{ content }} là où va la page, et {% davcode_scripts %} avant </body> (panier, statistiques).
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
{% davcode_head %}
<link rel="stylesheet" href="{{ "theme.css" | asset_url }}">
</head>
<body>
<header>…</header>
<main>{{ content }}</main>
<footer>…</footer>
{% davcode_scripts %}
</body>
</html>Panier et achat
Le panier est géré par le script davcode : un bouton data-dc-add="{{ product.id }}" ajoute au panier (avec data-dc-variant pour une variante), data-dc-cart ouvre le panier, data-dc-cart-count affiche le nombre d'articles.