Instrumentation d'un thème pour l'analyse de site actif (ASA)
Le thème du portail Menu de l'onglet - Générateur de pagesGénérateur de pages fourni avec HCL Digital Experience est préparé et peut être utilisé avec l'analyse de site actif. Vous pouvez également optimiser les autres thèmes du portail ou créer un thème personnalisé pour utiliser la fonction d'analyse de site actif.
Pourquoi et quand exécuter cette tâche
- Ajoutez des métadonnées à la page.
- Insérez un regroupeur dans la page.
- Insérez des dépendances dans la page.
- Insérez des microformats utiles lliés aux données statistiques que vous souhaitez collecter.
- Ajout de métadonnées à la page
- Un regroupeur sélectionne des informations stockées dans l'arborescence DOM (document object model) d'une page. Ces informations doivent être présentes dans la source HTML de la page. L'approche recommandée pour l'ajout de ces informations à une page consister à mettre en oeuvre le thème ou l'habillage afin qu'ils écrivent toutes les informations nécessaires dans l'arborescence DOM de la page. Exemples :
- Vous pouvez ajouter l'identificateur d'un portlet à l'arborescence DOM en ajoutant la ligne suivante au fichier skin.html dans le dossier WebDAV du thème :
<span class="asa.portlet.id" style="display:none;"><%= myPortletID %></span>Remarque : Si l'élémentA l'aide de l'exemple de code, le regroupeur peut extraire les identificateurs de tous les portlets d'une page en parcourant toutes les occurrences des élémentsspanest formulé dans un fichier CSS externe, vous devez faire précéder chaque point du nom de classe d'une barre oblique inversée. Exemple :asa\.portlet\.id{display:none;}"span"avec un attribut de classe"asa.portlet.id".Le bon fonctionnement de l'exemple de code dépend de la définition demyPortletIDdans le fichier skin.html. Par défaut, celle-ci est définie à l'aide du code JSP suivant :<portal-skin:portletID var="myPortletID"/> <jsp:useBean id="myPortletID" class="java.lang.String" scope="page"/> - Vous pouvez ajouter le titre du portlet à l'arborescence DOM en intégrant l'instruction
<portal-skin:portletTitle>au fichier skin.html avec un élément span disposant d'un attribut de classe"asa.portlet.title":<span class="asa.portlet.title"><portal-skin:portletTitle></portal-skin:portletTitle</span>
- Vous pouvez ajouter l'identificateur d'un portlet à l'arborescence DOM en ajoutant la ligne suivante au fichier skin.html dans le dossier WebDAV du thème :
- Insertion de regroupeurs dans une page
- Le portail inclut une mise en œuvre par défaut du point d'extension de thème com.ibm.portal.theme.plugin.ActiveSiteAnalyticsAggregators. Le point d'extension recherche un fichier JavaScript spécifié dans les métadonnées de la page. Le point d'extension inclut le contenu de ce fichier dans le code HTML de la page. La clé de métadonnées doit commencer par
asa_aggregatorouasa_jset sa valeur correspond au nom du fichier JavaScript. Pour plus de détails, voir la rubrique Ajout d'un regroupeur d'analyse de site actif (ASA) à une page du portail. Ajoutez le code suivant à proximité de la balise body de fermeture (</body>) du fichierthemeName\nls\theme_languageCode.htmldans le dossier WebDAV du thème :
Ce code parcourt chaque mise en oeuvre du point d'extension du thème et l'exécute. La mise en oeuvre par défaut incluse avec le portail suit l'approche soulignée précédemment.<portal-theme-ext:themeExtension id="com.ibm.portal.theme.plugin.ActiveSiteAnalyticsAggregators"> <portal-theme-ext:themeExtensionLoop> <portal-theme-ext:themeExtensionItemText /> </portal-theme-ext:themeExtensionLoop> </portal-theme-ext:themeExtension>Remarque : HCL version 8.5 ne prend pas en charge le point d'extension ayant l'IDcom.ibm.portal.theme.plugin.ActiveSiteAnalyticsItemset provenant des versions antérieures. Si vous avez migré un thème à partir d'une version de portail antérieure, prenez soin d'utiliser l'ID d'extensioncom.ibm.portal.theme.plugin.ActiveSiteAnalyticsAggregators. - Insertion de dépendances dans une page
- Si vous souhaitez que les dépendances soient ajoutées par plusieurs regroupeurs, ajoutez-les au titre de la page html. Le portail inclut une mise en oeuvre par défaut du point d'extension de thème
com.ibm.portal.theme.plugin.ActiveSiteAnalyticsDependencies. Le point d'extension recherche un fichier JavaScript spécifié dans les métadonnées de la page. Le point d'extension inclut le contenu de ce fichier dans le code HTML de la page. La clé de métadonnées doit commencer parasa_dependencyet sa valeur correspond au nom de fichier JavaScript. Pour plus de détails, voir la rubrique Ajout d'un regroupeur d'analyse de site actif (ASA) à une page du portail. Ajoutez le code suivant au titre du thème :
Ce code parcourt chaque mise en oeuvre du point d'extension du thème et l'exécute. La mise en oeuvre par défaut incluse avec le portail suit l'approche soulignée précédemment.<portal-theme-ext:themeExtension id="com.ibm.portal.theme.plugin.ActiveSiteAnalyticsDependencies"> <portal-theme-ext:themeExtensionLoop> <portal-theme-ext:themeExtensionItemText /> </portal-theme-ext:themeExtensionLoop> </portal-theme-ext:themeExtension> - Insertion d'un JSP de regroupeur dans une page
L'analyse de site actif peut inclure un fragment JSP dédié dans le cadre de l'inclusion du regroupeur sur la page. Le portail ajoute le contenu du fragment JSP au contenu introduit dans le fichier theme.html du thème.
La configuration du JSP est similaire à celle du regroupeur : ajoutez les métadonnées de page avec la clé
asa_jspà la page. Le portail interprète la valeur en tant que nom de fichier relatif au fichier theme.html du thème dans WebDAV. Par exemple, si vous souhaitez ajouter le marquage d'une page JSP dans un fichier intitulé page.jsp, vous pouvez placer cette page JSP en regard du fichier theme.html à l'aide de WebDAV et configurer une nouvelle propriété de page avec la cléasa_jspet la valeurpage.jsp.Exemple : si la clé d'un élément de métadonnées est
asa_jspet que sa valeur estasa_sample.jsp, le portail recherche une page JSP avec le nom de fichier asa_sample.jsp et, s'il le trouve, l'inclut dans le contenu de la page.Vous pouvez utiliser le point d'extensioncom.ibm.portal.theme.plugin.ActiveSiteAnalyticsIncludepour inclure une page JSP dans le contenu de page. La clé de métadonnées doit commencer parasa_jsp. Ajoutez le code suivant dans le thème :
Ce code parcourt chaque mise en oeuvre du point d'extension du thème et l'exécute. La mise en oeuvre par défaut incluse avec le portail suit l'approche soulignée précédemment.<portal-theme-ext:themeExtension id="com.ibm.portal.theme.plugin.ActiveSiteAnalyticsInclude"> <portal-theme-ext:themeExtensionLoop> <portal-theme-ext:themeExtensionRenderInclude/> </portal-theme-ext:themeExtensionLoop> </portal-theme-ext:themeExtension>- Insertion de microformats utiles
- Vous devrez peut-être modifier les habillages utilisés par thème pour que toutes les informations relatives au microformat que vous souhaitez capturer soient présentes lors de l'affichage de la page. Par exemple, vous pouvez ajouter ce code au fichier skin.html d'un habillage pour garantir que l'ID de tous les portlets de la page peuvent être reconnus par le script du regroupeur :
Dans ce cas, le fichier<span class="asa.portlet.id" style="display:none;"><%= myPortletID %></span>asa_sample.jsrecherche des éléments de la classeasa.portlet.idafin de trouver l'ID portlet de tous les portlets présents sur la page. Les titres des portlets peuvent être affichés à l'aide d'un code semblable à ci-après :
Pour capturer ces titres de portlets, vous pouvez ajouter un élément span supplémentaire avec une classe définie pour les titres qui seront recherchés par le fichier JavaScript d'analyse :<portal-skin:portletTitle />
Dans ce cas,<span class="asa.portlet.title"><portal-skin:portletTitle /></span>asa.portlet.titleest reconnue comme la classe de tous les éléments span qui contiennent le texte des titres de portlets.