Ajout d'une logique d'extension à toutes les pages de magasin

Vous pouvez configurer le magasin type Aurora pour inclure une logique d'extension personnalisée, telle que JSP autonome sur toutes les pages du magasin. En utilisant cette configuration, vous pouvez facilement intégrer du code commun sur toutes les pages du magasin, ou incorporer du code pour suivre l'historique de navigation des acheteurs.

Pourquoi et quand exécuter cette tâche

Par défaut, toutes les pages de magasin pour le magasin type Aurora incluent le fichier JSPFExtToInclude.jspf, qui récupère dynamiquement les fichiers JSP d'extension personnalisés pour les pages de magasin. Le fichier JSPFExtToInclude.jspf est utilisé pour récupérer une liste d'entrées de configuration dans la table de base de données STORECONF qui appartiennent à l'ID de magasin pour les pages du magasin. Les fichiers JRP de la page du magasin incluent ensuite le fichier spécifié dans la colonne de valeur pour chaque entrée.

HCL Commerce EnterpriseSi votre site utilise un modèle de magasin de site étendu, vous pouvez charger des informations permettant de configurer la logique d'extension pour toutes les pages de magasin pour un magasin spécifique ou pour tous les magasins. Vous pouvez ajouter des entrées dans la table STORECONF à l'aide de l'ID pour le magasin de ressources de vitrine ou un magasin spécifique. La liste des fichiers qui sont ajoutés aux pages d'un magasin incluent la valeur pour toutes les entrées pour ce magasin spécifique et pour le magasin de ressources de vitrine.

Lorsque vous chargez un fichier JSP personnalisé en tant qu'entrée dans la table STORECONF, votre fichier peut devoir inclure tous les fichiers d'installation d'environnement dont votre fichier JSP pourrait avoir besoin. Vous pouvez inclure un fichier d'installation d'environnement dans votre fichier JSP personnalisé avec une instruction d'inclusion, par exemple :
<%@ include file="/Widgets/Common/EnvironmentSetup.jspf"%> 
Vous pouvez ajouter des entrées dans la table STORECONF avec l'utilitaire Chargement de données ou manuellement avec un fichier SQL ou insérer des instructions. Les étapes suivantes montrent comment utiliser l'utilitaire Charge de données pour charger des informations dans ce tableau. Si vous souhaitez mettre à jour manuellement la table avec SQL, utilisez le format d'instruction d'insertion suivant :
insert into storeconf (storeent_id, name, value, optcounter)values (storeent_id, 'name', 'value', 0); 
STOREENT_ID
Identificateur du magasin, qui identifie le magasin mis à jour pour inclure la logique sur toutes les pages. Par exemple, 10001.
NAME
Nom de l'entrée de configuration. Le préfixe 'wc.pgl.jspInclude_' doit être déclaré dans le nom d'un magasin pour inclure la logique dans le corps des pages de magasin. Pour inclure la logique dans la section d'en-tête des pages de magasin, utilisez le préfixe 'wc.pgl.jspIncludeHead_' dans le nom.

Si votre site utilise la logique de plusieurs fournisseurs, incluez le nom du fournisseur dans le nom de l'entrée de configuration. Par exemple, 'wc.pgl.jspInclude_vendor_SiteMap'vendor est le nom de votre entreprise ou de l'entreprise qui fournit la logique. La valeur de la zone de nom doit être unique pour un magasin dans la table STORECONF.

VALUE
Valeur du chemin d'accès relatif pour l'entrée de configuration. Ce chemin d'accès relatif indique le fichier de fragments JSP d'extension que vous souhaitez inclure dans chaque page de magasin. Par exemple : '/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp'
Si vous chargez des entrées pour configurer les pages du magasin afin d'inclure une carte de site pour plusieurs magasins, vos instructions SQL peuvent ressembler aux instructions suivantes.
insert into storeconf (storeent_id, name, value, optcounter) values (10001, 'wc.pgl.jspInclude_myCompany_SiteMap', 
'/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp', 0);
insert into storeconf (storeent_id, name, value) values (10152, 'wc.pgl.jspInclude_myCompany_SiteMap', 
'/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp', 0);
insert into storeconf (storeent_id, name, value) values (10751, 'wc.pgl.jspInclude_myCompany_SiteMap', 
'/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp', 0);

Procédure

  1. Créez le fichier CSV et les fichiers de configuration de l'utilitaire Chargement des données pour charger les informations de votre configuration de magasin. Pour vous aider à créer ces fichiers, HCL Commerce fournit des exemples de fichiers CSV et de configuration. Utilisez ces exemples de fichiers pour modéliser vos fichiers CSV et de configuration.
    1. Créez un répertoire pour inclure les fichiers CSV et les fichiers de configuration de l'utilitaire Chargement des données pour le chargement des informations de modèle de présentation. Vous pouvez créer ce répertoire n'importe où dans votre système de fichiers, mais pour les étapes suivantes, un répertoire StoreConfiguration-MyCompany est créé dans le répertoire WCDE_installdir\components\foundation\samples\DataLoad.
    2. Accédez au répertoire WCDE_installdir\components\foundation\samples\DataLoad\StoreConfiguration. Copiez le contenu du répertoire StoreConfiguration : Ce répertoire inclut l'exemple de fichiers CSV et de fichiers de configuration pour le chargement des informations de configuration du magasin.
    3. Ajoutez les fichiers copiés dans votre répertoire StoreConfiguration-MyCompany.
    4. Dans le répertoire StoreConfiguration-MyCompany, ouvrez le fichier StoreConfiguration.csv pour le modifier.
      Par défaut, ce fichier inclut les colonnes requises pour charger les informations de configuration du magasin et les exemples de données. Supprimez les exemples de données dans ce fichier. Ne supprimez aucune des colonnes ou le mot clé StoreConfiguration dans le fichier. Ajoutez les données de votre conteneur de modèle de présentation personnalisé dans le fichier.
      Dans votre fichier CSV, définissez les valeurs de colonne suivantes
      STOREENT_ID
      Facultatif. Vous n'avez pas besoin d'inclure la colonne STOREENT_ID ou sa valeur. Par défaut, le processus de chargement de données charge les informations du magasin configuré dans le fichier de configuration de l'environnement wc-dataload-env.xml. Incluez cette colonne si vous souhaitez charger des données pour un magasin différent de celui configuré par le magasin dans le fichier de configuration de l'environnement.
      NAME
      Nom de l'entrée de configuration. Incluez le préfixe 'wc.pgl.jspInclude_' ou 'wc.pgl.jspIncludeHead_' dans le nom. Si votre site utilise la logique de plusieurs fournisseurs, incluez le nom du fournisseur dans le nom de l'entrée de configuration.
      VALUE
      Valeur du chemin d'accès relatif pour l'entrée de configuration. Ce chemin d'accès relatif indique le fichier de fragments JSP d'extension que vous souhaitez inclure dans chaque page de magasin.
      Delete
      Facultatif. Indique s'il faut supprimer une entrée de configuration de magasin. Définissez la valeur de cette colonne sur 1 pour supprimer l'entrée. Si vous ne définissez pas de valeur, la valeur est 0 par défaut et l'entrée charge dans la table STORECONF.
    5. Sauvegardez et fermez votre fichier d'entrée CSV.
      Votre fichier peut ressembler au fichier suivant.
      StoreConfiguration
      STOREENT_ID,Name,Value,Delete
      10001,wc.pgl.jspInclude_myCompany_SiteMap,/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp,0
      10152,wc.pgl.jspInclude_myCompany_SiteMap,/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp,0
      10751,wc.pgl.jspInclude_myCompany_SiteMap,/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp,0
  2. Configurer l'utilitaire de chargement de données
    Vous n'avez pas besoin de mettre à jour le fichier copié de configuration de commande de chargement de données, wc-dataload-store-configuration.xml, ou le fichier de configuration d'objet métier, wc-loader-store-configuration.xml. Vous devez configurer votre fichier de configuration d'environnement de chargement de données.
    1. Ouvrez le fichier de configuration de l'environnement de chargement des données wc-dataload-env.xml pour l'éditer.
      Ce fichier configure les variables d'environnement de l'utilitaire Chargement des données, comme paramètres de base de données, la résolution d'ID et l'auteur de données.
    2. Mettez à jour le fichier pour qu'il corresponde aux paramètres de votre base de données et de votre environnement.
      Pour plus d'informations, voir Configuration des paramètres d'environnement de chargement de données. Vous pouvez entrer une valeur pour votre identificateur de magasin dans ce fichier ou entrer l'identificateur de magasin dans votre fichier CSV pour charger les fichiers CSV. L'identificateur de magasin est utilisé pour identifier le magasin abonné à votre modèle de présentation. Cet identificateur de magasin est sensible à la casse. Vous pouvez trouver la valeur de votre identificateur de magasin dans la colonne IDENTIFIER de la table de base de données STOREENT.
    3. Enregistrez votre fichier.
  3. Exécutez l'utilitaire de chargement de données.
    1. Dans l'utilitaire de ligne de commande, accédez au répertoire WCDE_installdir\bin.
    2. Exécutez la commande suivante pour charger les fichiers d'entrée afin qu'ils s'inscrivent et définissent votre modèle de présentation, et que votre magasin s'abonne au modèle.

      dataload.bat ..\components\foundation\samples\DataLoad\StoreConfiguration-MyCompany\wc-dataload-store-configuration.xml

    3. Vérifiez les résultats du chargement de données.
  4. Vérifiez que la propriété de configuration de logique d'extension est chargée avec succès dans la table STORECONF.
    Exécutez la commande SQL suivante :
    Select * from storeconf;
    Assurez-vous que les propriétés de configuration de votre logique d'extension s'affichent dans le contenu de la base de données retournée. Par exemple, les résultats de la table STORECONF peuvent ressembler à :
    STOREENT_ID NAME VALUE
    10001 'wc.pgl.jspInclude_myCompany_SiteMap' '/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp'
    10152 'wc.pgl.jspInclude_myCompany_SiteMap' '/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp'
    10751 'wc.pgl.jspInclude_myCompany_SiteMap' '/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp'