功能板

使用 AEM 可以管理多种不同类型的内容(如页面、资产)。AEM 功能板提供一种简单易用的自定义方式来定义主要显示综合数据的页面。

注意

AEM 功能板是基于每位用户创建的,因此用户只能访问他们自己的功能板。

但是,仪表板模板可用于共享通用配置和仪表板布局。

chlimage_1-22

管理功能板

创建功能板

要创建新的功能板,可按照以下步骤进行操作:

  1. 在​工具​区域中,单击​配置控制台

  2. 在树中,多次-单击​仪表板

  3. 单击​新建功能板

  4. 键入​标题(例如“我的功能板”)和​名称

  5. 单击​创建

克隆功能板

建议您创建多个功能板,以便在不同的视图中快速查看与内容有关的信息。为了帮助您创建新功能板,AEM 提供了一种克隆功能,可用于复制现有的功能板。要克隆功能板,请按照以下步骤执行操作:

  1. 在​工具​区域中,单击​配置控制台

  2. 在树中,单击​功能板

  3. 单击要克隆的功能板。

  4. 单击​克隆

  5. 键入新功能板的​名称

删除功能板

  1. 在​工具​区域中,单击​配置控制台

  2. 在树中,单击​功能板

  3. 单击要删除的功能板。

  4. 单击​删除

  5. 单击​​以确认。

功能板组件

概述

仪表板组件只是常规AEM组件。 本节介绍随 AEM 一起推出的报表组件。

网站分析报表组件

AEM随附一组组件,这些组件渲染了SiteCatalyst数据的多个度量。 这些组件在​功能板​区域下方的 Sidekick 中列出。

每个报表组件提供至少三个选项卡:

  • 基本:包含主配置。

  • 报表:包含每个组件的特定配置。

  • 样式:包含样式配置,如图表大小和边距。

报表组件会初始化为默认配置,这有助于您快速设置功能板。

基本配置

基本​选项卡提供对以下配置条目的访问权:

题仪表板上显示的标题。

请求 类型请求数据的方式。

SiteCatalyst配置( 可选)要用于连接到SiteCatalyst的配置。如果未提供,则认为该配置是在功能板页面上进行配置的(通过页面属性)。

报表包ID(可选) 要用于生成图形的SiteCatalyst报表包。

报表配置

为了显示网站分析,您需要定义想要获取的数据的日期范围。报表​选项卡提供两个用于定义该范围的字段。

注意

若设置一个较大的日期范围,会降低功能板的响应能力。

期从获取数据的绝对或相对日期。

期至获取数据的绝对或相对日期。

每个组件还定义特定设置。

超时报表

chlimage_1-26

期粒度X轴的时间单位(如日、小时)。

​指标要显示的事件的列表。

素分解图形中度量数据的元素列表。

排名列表报表

chlimage_1-27

素分解图形中度量数据的元素。

​指标要显示的事件。

否. of top items​报告显示的项数。

排名报表

chlimage_1-28

​指标要显示的事件。

素分解图形中度量数据的元素。

热门网站区域报表

该组件显示一个图形,图中又根据以下配置显示网站中访问量较大的区域。

chlimage_1-21

否. of top items​报告中显示的节数。

趋势报表

chlimage_1-30

期粒度X轴的时间单位(如日、小时)。

​指标要显示的事件。

素分解图形中度量数据的元素。

扩展功能板

概述

功能板是普通页面 (cq:Page),因此任何组件都可用于构建功能板。

默认组件组Dashboard包含分析报告组件,默认情况下,这些组件在模板上处于启用状态。

创建功能板模板

模板定义新功能板的默认内容。您可以使用多个模板来创建不同类型的功能板。

仪表板模板的创建方式与其他页面模板类似,只是它们存储在/libs/cq/dashboards/templates/下。 请参阅创建内容页面模板部分。

注意

功能板模板可在用户之间共享。

开发功能板组件

开发功能板组件包括创建一个常用 AEM 组件。本节介绍用于显示头 10 位参与者的组件示例。

chlimage_1-31

顶级作者组件存储在/apps/geometrixx-outdoors/components/reporting的存储库中,由以下组件组成:

  1. 一个 jsp 文件,它可读取数据并定义 html 占位符。

  2. 一个客户端库,其中包含一个可对数据进行获取或排序,然后填充 js 占位符的 html 文件。

chlimage_1-32

以下Javascript文件在geout.reporting.topauthors 客户端库中定义为组件本身的子项。

QueryBuilder用于将存储库查询为读取cq:AuditEvent节点。 查询结果是一个可从其中提取作者投稿的 JSON 对象。

top_authors.js

$.ajax({
  url: "/bin/querybuilder.json",
  cache: false,
  data: {
       "orderby": "cq:time",
       "orderby.sort": "desc",
       "p.hits": "full",
       "p.limit": 100,
       "path": "/var/audit/com.day.cq.wcm.core.page/",
       "type": "cq:AuditEvent"
   },
  dataType: "json"     
}).done(function( res ) {
    var authors = {};
    // from JSON to Object
    for(var r in res.hits) {
        var userId = res.hits[r].userId;
        if(userId == undefined) {
            continue;
        }
        var auth = authors[userId] || {userId : userId};
        auth.contrib = (auth.contrib || 0) +1;
        
        authors[userId] = auth;
    }
    
    // order by contribution
    var orderedByContrib = [];
    for(var a in authors) {
        orderedByContrib.push(authors[a]);
    }
    orderedByContrib.sort(function(a,b){return b.contrib - a.contrib});
    
    // produce the list
    for (var i=0, tot=orderedByContrib.length; i < tot; i++) {
        var current = orderedByContrib[i];
        $("<div> #" + (i + 1) +" "+ current.userId + " (" + current.contrib +" contrib.)</div>").appendTo("#authors-list");

    }
});  

JSP包括global.jspclientlib

top_authors.jsp

<%@page session="false" contentType="text/html; charset=utf-8" %><%
%><%
%><%@include file="/libs/foundation/global.jsp" %><%
%>
<ui:includeClientLib categories="geout.reporting.topauthors" />
<%
String reportletTitle = properties.get("title", "Top Authors");
%>
<html>
     <h3><%=xssAPI.encodeForHTML(reportletTitle) %></h3>
     <div id="authors-list"></div>
</html>

在此页面上

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free