Adición de lógica de extensión a todas las páginas de tienda

Puede configurar la tienda de inicio Aurora para incluir lógica de extensión personalizada, como la JSP autocontenida en todas las páginas de tienda. Mediante el uso de esta configuración, puede incluir fácilmente código común en todas las páginas de tienda o incluir código para hacer el seguimiento del historial de navegación de los compradores.

Por qué y cuándo se efectúa esta tarea

De forma predeterminada, todas las páginas de tienda para la tienda de inicio Aurora incluyen el archivo JSPFExtToInclude.jspf que recupera dinámicamente archivos JSP de extensión personalizados para las páginas de tienda. El archivo JSPFExtToInclude.jspf se utiliza para recuperar una lista de entradas de configuración en la tabla de base de datos STORECONF que pertenecen al ID de tienda para las páginas de tienda. Los archivos JSP de páginas de tienda incluyen entonces el archivo que se especifica en la columna de valor para cada entrada.

HCL Commerce EnterpriseSi el sitio utiliza un modelo de tienda de sitios ampliados, puede añadir lógica de extensión a todas las páginas de tienda para cualquiera de las tiendas o todas ellas. Puede añadir entradas en la tabla STORECONF utilizando el ID de la tienda con elementos de escaparate o una tienda específica. En la lista de archivos que se añaden a las páginas para una tienda, incluya el valor para todas las entradas para dicha tienda específica y para la tienda con elementos de escaparate.

Cuando esté cargando un archivo JSP personalizado como una entrada en la tabla STORECONF, es posible que sea necesario que el archivo incluya los archivos de configuración de entorno que el archivo JSP puede necesitar. Puede incluir un archivo de configuración de entorno en el archivo JSP personalizado con una sentencia de inclusión, por ejemplo:
<%@ include file="/Widgets/Common/EnvironmentSetup.jspf"%> 
Puede añadir entradas en la tabla STORECONF con el programa de utilidad de carga de datos o manualmente con un archivo SQL o sentencias de inserción. Los pasos siguientes muestran cómo utilizar el programa de utilidad de carga de datos para cargar información en esta tabla. Si desea actualizar manualmente la tabla con SQL, utilice el formato de sentencia de inserción siguiente:
insert into storeconf (storeent_id, name, value, optcounter)values (storeent_id, 'name', 'value', 0); 
Donde
STOREENT_ID
Identificador de tienda, que identifica la tienda que se actualiza para incluir lógica en todas las páginas. Por ejemplo, 10001
NAME
Nombre de la entrada de configuración. El prefijo 'wc.pgl.jspInclude_' se debe declarar en el nombre de una tienda para incluir lógica en el cuerpo de las páginas de tienda. Para incluir lógica en la sección de cabecera de las páginas de tienda, utilice el prefijo 'wc.pgl.jspIncludeHead_'.

Si el sitio utiliza lógica de varios proveedores, incluya el nombre de proveedor en el nombre de la entrada de configuración. Por ejemplo, 'wc.pgl.jspInclude_vendor_SiteMap' donde vendor es el nombre de la empresa del usuario o de la empresa que proporciona la lógica. El nombre del campo de nombre debe ser exclusivo para una tienda en la tabla STORECONF.

VALUE
El valor de la vía de acceso relativa para la entrada de configuración. Esta vía de acceso relativa apunta al archivo de fragmento JSP de extensión que desea incluir en cada página de la tienda. Por ejemplo, '/Widgets/com.myCompany.commerce.store.widgets.SiteMap/SiteMap.jsp'
Si está cargando entradas para configurar las páginas de tienda para incluir un mapa de sitio para varias tiendas, las sentencias de SQL puede parecerse a las siguientes sentencias.
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);

Procedimiento

  1. Cree el archivo CSV y los archivos de configuración de programa de utilidad de carga de datos para cargar la información de configuración de tienda. Para ayudarle a crear estos archivos, HCL Commerce proporciona archivos de configuración y CSV de ejemplo. Utilice estos archivos de ejemplo para modelar los archivos de configuración y CSV.
    1. Cree un directorio para incluir los archivos CSV y los archivos de configuración de programa de utilidad de carga de datos para cargar la información de plantilla de diseño. Puede crear este directorio en cualquier lugar del sistema de archivos; sin embargo, para los pasos siguientes, se crea un directorio StoreConfiguration-MyCompany en el directorio WCDE_installdir\components\foundation\samples\DataLoad.
    2. Vaya al directorio WCDE_installdir\components\foundation\samples\DataLoad\StoreConfiguration. Copie el contenido del directorio StoreConfiguration: Este directorio incluye los archivos CSV y archivos de configuración de ejemplo para cargar información de configuración de tienda.
    3. Añada los archivos copiados en este directorio StoreConfiguration-MyCompany.
    4. En el directorio StoreConfiguration-MyCompany, abra el archivo StoreConfiguration.csv para editarlo.
      De forma predeterminada, este archivo incluye las columnas necesarias para cargar información de configuración de tienda y datos de ejemplo. Suprima los datos de ejemplo de este archivo. No elimine alguna de las columnas o la palabra clave StoreConfiguration en el archivo. Añada los datos para el contenedor de plantilla de diseño personalizado en el archivo.
      En el archivo CSV, establezca los siguientes valores de columna
      STOREENT_ID
      Opcional. No es necesario que incluya la columna o el valor STOREENT_ID De forma predeterminada, el proceso de carga de datos carga información para la tienda que se ha configurado en el archivo de configuración de entorno wc-dataload-env.xml Incluya esta columna si desea cargar datos para una tienda diferente de la tienda configurada en el archivo de configuración de entorno.
      NAME
      Nombre de la entrada de configuración. Incluya el prefijo 'wc.pgl.jspInclude_' o 'wc.pgl.jspIncludeHead_' en el nombre. Si el sitio utiliza lógica de varios proveedores, incluya el nombre de proveedor en el nombre de la entrada de configuración.
      VALUE
      El valor de la vía de acceso relativa para la entrada de configuración. Esta vía de acceso relativa apunta al archivo de fragmento JSP de extensión que desea incluir en cada página de la tienda.
      Delete
      Opcional. Indica si se debe eliminar una entrada de configuración de tienda. Establezca el valor para esta columna en 1 para eliminar la entrada. Si no establece un valor, el valor se predetermina en 0 y la entrada se carga en la tabla STORECONF.
    5. Guarde y cierre el archivo de entrada CSV.
      El archivo puede parecerse al siguiente contenido de archivo:
      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. Configure el programa de utilidad de carga de datos
    No necesita actualizar el archivo de configuración de pedido de carga de datos copiado, wc-dataload-store-configuration.xml, o el archivo de configuración de objeto de negocio, wc-loader-store-configuration.xml. Debe configurar el archivo de configuración de entorno de carga de datos.
    1. Para editar abra el archivo de configuración del entorno de carga de datos wc-dataload-env.xml.
      Este archivo configura las variables de entorno de programa de utilidad de carga de datos, como los valores de base de datos, la resolución de ID y el grabador de datos.
    2. Actualice el archivo de modo que coincida con los valores de base de datos y entorno.
      Para obtener más información, consulte Configurar los valores de entorno de carga de datos. Puede especificar un valor para el identificador de tienda en este archivo o especificar el identificador de tienda en el archivo CSV para cargar los archivos CSV. El identificador de tienda se utiliza para identificar la tienda que se suscribe a la plantilla de diseño. El identificador de tienda es sensible a las mayúsculas y minúsculas. Puede encontrar el valor del identificador de tienda dentro de la columna IDENTIFIER de la tabla de base de datos STOREENT.
    3. Guarde el archivo.
  3. Ejecute el programa de utilidad de carga de datos.
    1. En un programa de utilidad de línea de mandatos, vaya al directorio WCDE_installdir\bin.
    2. Ejecute el mandato siguiente para cargar los archivos de entrada a fin de registrar y definir la plantilla de diseño y para que la tienda se suscriba a la plantilla.

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

    3. Verifique los resultados de la carga de datos.
  4. Verifique que la propiedad de configuración de lógica de extensión se ha cargado satisfactoriamente en la tabla STORECONF.
    Ejecute el mandato de SQL siguiente:
    Select * from storeconf;
    Asegúrese de que las propiedades de configuración de lógica de extensión se visualizan en el contenido de base de datos devuelto. Por ejemplo, el resultado de la tabla STORECONF puede parecerse a lo siguiente:
    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'