Aller au contenu principal

Introduction

Gérez les produits de commerce électronique avec des catalogues dynamiques, des filtres et une recherche.

🎯 Que fait ce module ?

Le module Products (Catalogue) est un module autonome qui vous permet de créer, récupérer, filtrer et gérer des produits dans votre boutique en ligne ou vos collections multimédias. Il fournit des outils très flexibles pour créer des catalogues de produits ou des galeries multimédias avec des fonctionnalités de recherche, de filtrage et d'organisation puissantes.

Le Catalogue permet de créer, télécharger, éditer et filtrer des catalogues via une interface intuitive. Au-delà du commerce électronique, il prend en charge des applications alternatives comme les galeries multimédias, démontrant sa polyvalence en tant qu'outil de gestion de contenu.

Considérez-le comme votre entrepôt numérique - vous gérez votre inventaire de produits dans le panneau d'administration de OneEntry (Catalogue > Produits), et votre application récupère les produits dynamiquement avec une recherche, des filtres et un tri puissants.

📖 Explication Simple

Imaginez que vous construisez une boutique en ligne vendant :

  • 👟 Baskets - avec tailles, couleurs, prix
  • 📱 Électronique - avec spécifications, images, avis
  • 👕 Vêtements - avec tailles, matériaux, variantes
  • 📚 Livres - avec auteurs, prix, descriptions

✅ Au lieu de coder chaque produit en dur, vous :

  • Ajoutez des produits dans le panneau d'administration de OneEntry (avec tous les détails)
  • Récupérez des produits dynamiquement en utilisant ce module
  • Filtrez par catégorie, gamme de prix, disponibilité
  • Recherchez des produits par nom ou description
  • Triez par prix, date, popularité
  • Mettez à jour les prix/le stock sans redéployer

Exemple du monde réel :

❌ Sans le module Products (codé en dur) :
- Ajouter un nouveau produit → Changer le code → Déployer
- Changer le prix → Changement de code → Déployer
- 1000 produits = fichier de code massif

✅ Avec le module Products (dynamique) :
- Ajouter un nouveau produit → Mettre à jour dans l'administration → En direct instantanément
- Changer le prix → Mettre à jour dans l'administration → En direct instantanément
- 10 000 produits = simples appels API

✨ Concepts Clés

Qu'est-ce qu'un Produit ?

Un produit est un article que vous vendez, contenant :

  • Informations de base - Nom, description, SKU, prix
  • Images - Photos du produit, galerie
  • Variantes - Tailles, couleurs, options (par exemple, "T-shirt rouge taille M")
  • Inventaire - Quantité en stock, disponibilité
  • Attributs personnalisés - Tous les champs que vous définissez (marque, matériau, poids, etc.)
  • SEO - Titre méta, description, mots-clés
  • Statut - Actif, brouillon, en rupture de stock
  • Localisation - Support multilingue

Structure du Produit

Les produits peuvent avoir différentes structures :

TypeDescriptionExemple
Produit SimpleArticle unique, sans variantesLivre, Affiche
Produit avec VariantesPlusieurs options (taille, couleur)T-shirt (S/M/L, Rouge/Bleu)
Produit NumériqueArticles téléchargeablesE-book, Logiciel
PackGroupe de produitsPack de démarrage, Coffret cadeau

Organisation des Produits

Les produits sont organisés à travers plusieurs fonctionnalités clés :

  • Catégories - Organisez en sections (Les catégories sont des pages de type Catalogue créées dans le module Pages)
  • Statuts des Produits - Créez des conditions de filtrage supplémentaires au-delà des filtres d'attributs existants
  • Liens de Produits - Établissez des connexions entre les produits en fonction des critères d'attributs
  • Filtres de Produits - Recherche rapide en utilisant des critères de filtrage spécifiés
  • Attributs personnalisés - Marque, Taille, Couleur, Matériau, etc.

Exemple de hiérarchie :

📁 Électronique
├─ 📱 Smartphones
│ ├─ iPhone 15 Pro
│ └─ Samsung Galaxy S24
└─ 💻 Ordinateurs portables
├─ MacBook Pro
└─ Dell XPS

📁 Vêtements
├─ 👕 T-Shirts
└─ 👖 Jeans

📋 Ce Que Vous Devez Savoir

Architecture du Catalogue

Important : Les catégories du catalogue sont des pages de type Catalogue créées via le module Pages. Vous devez d'abord créer les catégories de catalogue avant d'ajouter des produits.

Fonctionnalités du Catalogue :

  • Onglet Produits - Espace de travail principal pour créer et gérer les éléments du catalogue
  • Filtres de Produits - Recherche rapide en utilisant des critères spécifiés
  • Liens de Produits - Connectez des produits en fonction des critères d'attributs (par exemple, tous les téléphones noirs)
  • Statuts des Produits - Conditions de filtrage supplémentaires pour l'organisation
  • Téléchargement de Catalogue - Importation en masse des données du catalogue
  • Paramètres - Options de configuration avec des champs de saisie numériques

Façons d'Obtenir des Produits

MéthodeQuand l'utiliserExemple
getProducts()Lister les produits avec filtres/recherchePage de catalogue
getProductsByPageId()Produits d'une catégorie spécifique (par ID)Page de catégorie
getProductsByPageUrl()Produits d'une catégorie spécifique (par URL)Page de catégorie par URL
getProductById()Obtenir un produit unique par IDPage de détail du produit
getRelatedProductsById()Obtenir des produits similairesSection "Vous pourriez aussi aimer"
searchProduct()Rechercher des produits par requêteFonctionnalité de recherche

Pagination Expliquée Simplement

Lorsque vous avez 1000 produits, vous ne les chargez pas tous en même temps :

Formule d'offset : offset = (pageNumber - 1) * limit


Options de Tri

Trier les produits par différents champs :

sortKeyCe que cela faitExemple d'utilisation
priceTrier par prixAfficher les moins chers en premier
dateTrier par date de créationAfficher les produits les plus récents
titleTrier par ordre alphabétiqueListe de produits A-Z
positionOrdre personnalisé (par défaut)Ordre choisi par l'administrateur
idTrier par IDTri technique

Ordre de tri :

  • ASC (Croissant) - Bas à haut (A→Z, 0→9, pas cher→cher)
  • DESC (Décroissant) - Haut à bas (Z→A, 9→0, cher→pas cher)

Filtrage des Produits

Utilisez des filtres pour affiner les résultats :

Marqueurs de condition :

MarqueurSignificationExemple
eqÉgal (correspondance exacte)Prix = 50 $
neqPas égalStatut ≠ "épuisé"
inContient (un des)Couleur dans ["rouge", "bleu"]
ninNe contient pasCatégorie pas dans ["archivé"]
mthSupérieur àPrix > 100 $
lthInférieur àPrix < 50 $
exsExiste (a une valeur)A une remise
nexsN'existe pas (vide)Pas de remise

Statut et Liens des Produits

Statuts des Produits créent des conditions de filtrage supplémentaires au-delà des filtres d'attributs existants pour une organisation de produit plus sophistiquée.

Liens de Produits permettent d'établir des connexions entre les produits en fonction des critères d'attributs. Par exemple, vous pouvez lier tous les produits ayant le même attribut de couleur (par exemple, tous les téléphones noirs ensemble).


📊 Tableau de Référence Rapide - Méthodes Courantes

MéthodeDescriptionCas d'utilisation
getProducts()Obtenir tous les produits avec filtrage/trisPage principale du catalogue
getProductById()Obtenir un produit unique par IDPage de détail du produit
getProductsByPageId()Obtenir des produits d'une catégorie par IDPage de catégorie
getProductsByPageUrl()Obtenir des produits d'une catégorie par URLPage de catégorie par URL
getRelatedProductsById()Obtenir des produits similairesSection "Vous pourriez aussi aimer"
searchProduct()Rechercher des produits par requêteFonctionnalité de recherche
getProductsCount()Obtenir le nombre total de produitsInformations de pagination
getProductsCountByPageId()Obtenir le nombre de produits par ID de catégoriePagination de catégorie
getProductsCountByPageUrl()Obtenir le nombre de produits par URL de catégoriePagination de catégorie
getProductBlockById()Obtenir un bloc de produit par IDBlocs de contenu de produit
getProductsEmptyPage()Obtenir la structure de page vide de produitsGestion de l'état vide
getProductsPriceByPageUrl()Obtenir les prix des produits par URL de pageFiltrage des prix

❓ Questions Fréquemment Posées (FAQ)

Puis-je filtrer par plusieurs critères à la fois ?

Oui ! Combinez plusieurs filtres dans un tableau.


Comment gérer les variantes de produits (tailles, couleurs) ?

Les variantes de produits sont stockées dans attributeValues.


Comment implémenter le bouton "Charger Plus" ?

Utilisez l'offset pour charger plus de produits.


Puis-je afficher des produits de plusieurs catégories ?

Oui, utilisez le marqueur de condition category in.


Comment implémenter la section "Nouveautés" ?

Trier par date de création ou utiliser la catégorie parente pour un tri manuel.


💡 Notes Importantes

Configuration des Catégories de Catalogue

Important : Avant d'ajouter des produits, vous devez créer des catégories de catalogue via le module Pages. Les catégories du catalogue sont des pages de type Catalogue.

Flux de travail :

  1. Allez dans le module Pages dans le panneau d'administration
  2. Créez des pages de type "Catalogue"
  3. Ces pages deviennent vos catégories de produits
  4. Ajoutez des produits à ces catégories via Catalogue > Produits

Fonctionnalités du Catalogue

Le module Catalogue fournit des outils complets :

  • Onglet Produits - Espace de travail principal pour créer/ gérer les éléments du catalogue
  • Filtres de Produits - Permettent une recherche rapide en utilisant des critères spécifiés
  • Liens de Produits - Connectez des produits connexes en fonction des attributs
  • Statuts des Produits - Créez des conditions de filtrage personnalisées
  • Téléchargement de Catalogue - Importation en masse de produits
  • Paramètres - Configurez le comportement du catalogue

Au-delà du Commerce Électronique

Le Catalogue n'est pas limité aux produits - il peut être utilisé pour :

  • Galeries Multimédias - Photos, vidéos, collections d'œuvres d'art
  • Articles de Portfolio - Travaux de design, études de cas
  • Bibliothèques de Documents - Ressources, téléchargements
  • Catalogues d'Événements - Conférences, webinaires
  • Collections de Recettes - Nourriture, boissons, cuisine

Optimisation des Performances

Mettez en cache les produits fréquemment consultés pour réduire les appels API et améliorer les temps de chargement.


Toujours Filtrer les Produits Actifs

En production, montrez toujours uniquement les produits actifs en filtrant avec statusId: 1.


Gérer les Images Manquantes

Fournissez des images de secours pour les produits sans images afin de maintenir une interface utilisateur cohérente.


🎓 Meilleures Pratiques

  • Utilisez toujours la pagination (limite + offset)
  • Filtrez par statusId: 1 en production
  • Mettez en cache les listes de produits pour réduire les appels API
  • Gérez les "ruptures de stock" avec soin
  • Fournissez des images de secours
  • Utilisez des marqueurs pour les produits en vedette (pas d'ID)
  • Implémentez la recherche avec un délai
  • Ajoutez des états de chargement dans l'interface utilisateur

Plus d'informations sur le Catalogue dans le panneau d'administration de OneEntry : https://doc.oneentry.cloudhttps://doc.oneentry.cloud/docs/category/catalog


Définition du module Products


const { Products } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);


Ce module accepte un ensemble de paramètres utilisateur appelés userQuery. Si les paramètres ne sont pas passés à la méthode, la valeur par défaut sera appliquée. Certaines méthodes acceptent le corps comme paramètre pour le filtrage. Si vous ne souhaitez pas configurer le tri, passez un tableau vide ou ne passez rien.

Paramètres :


const userQuery = {
offset: 0,
limit: 30,
sortOrder: 'DESC',
sortKey: 'id',
}

Schéma

offset : nombre
Paramètre de pagination. Par défaut 0
exemple : 0

limit : nombre
paramètre de pagination. Par défaut 30
exemple : 30

sortKey : chaîne
Champ pour le tri (par défaut non défini - tri par position, valeurs possibles : id, title, date, price, position)
Valeurs disponibles : id, position, title, date, price

sortOrder : chaîne
ordre de tri DESC | ASC (par défaut DESC)
exemple : "DESC"

"conditionMarker" par lequel les valeurs sont filtrées (non défini par défaut), valeurs possibles :

'in' - Contient,
'nin' - Ne contient pas,
'eq' - Égal,
'neq' - Pas égal,
'mth' - Supérieur à,
'lth' - Inférieur à,
'exs' - Existe,
'nexs' - N'existe pas


🔗 Documentation Connexe