Adobe 外掛程式:formatTime

重要

此外掛程式由 Adobe Consulting 提供,協助您從 Adobe Analytics 中獲得更多價值。Adobe 客戶服務不提供此外掛程式的支援,包括安裝或疑難排解在內。如果您需要與此外掛程式有關的協助,請聯絡貴組織的客戶經理。客戶經理可安排您與顧問會面以尋求協助。

formatTime 外掛程式可讓您以分段格式呈現任何秒數,並且四捨五入到所需的基準值。如果您想要以秒為單位擷取時間值,再轉換為分段格式 (如分鐘、天或週),Adobe 建議您使用此外掛程式。如果您不想將以秒為單位的值分段為時間捨入格式,則不需要此外掛程式。

使用Web SDK或Adobe Analytics擴展安裝插件

Adobe 提供一個擴充功能,可讓您使用最常用的外掛程式。

  1. 登錄到 Adobe Experience Platform資料收集 使用AdobeID憑據。
  2. 按一下所需的標記屬性。
  3. 前往擴充功能標記,然後按一下「目錄」按鈕
  4. 安裝並發佈常用 Analytics 外掛程式擴充功能
  5. 如果您尚未執行上述步驟,請使用下列設定建立標示為「初始化外掛程式」的規則:
    • 條件:無
    • 事件:核心 - 已載入資料庫 (頁面頂端)
  6. 使用下列設定將動作新增至上述規則:
    • 擴充功能:常用 Analytics 外掛程式
    • 動作類型:初始化 formatTime
  7. 儲存並發佈規則的變更。

使用自訂程式碼編輯器安裝外掛程式

如果您不想使用外掛程式擴充功能,可以使用自訂程式碼編輯器。

  1. 登錄到 Adobe Experience Platform資料收集 使用AdobeID憑據。
  2. 按一下所需的屬性。
  3. 前往擴充功能標記,然後按一下 Adobe Analytics 擴充功能底下的​「設定」​按鈕。
  4. 展開使用自訂程式碼設定追蹤摺疊式功能表,便會顯示「開啟編輯器」按鈕。
  5. 開啟自訂程式碼編輯器,並將下方提供的外掛程式程式碼貼入編輯視窗中。
  6. 儲存並發佈 Analytics 擴充功能的變更。

使用 AppMeasurement 安裝外掛程式

Analytics 追蹤物件實例化 (使用 s_gi) 後,將下列程式碼複製並貼到 AppMeasurement 檔案中的任何位置。保留您實作中的程式碼備註和版本號碼,有助於 Adobe 疑難排解任何可能問題。

/******************************************* BEGIN CODE TO DEPLOY *******************************************/
/* Adobe Consulting Plugin: formatTime v2.0 */
function formatTime(ns,tf,bml){var f=ns,d=tf,e=bml;function h(b,d,c,e){if("string"!==typeof d)return!1;if("string"===typeof b)b=b.split(c||",");else if("object"!==typeof b)return!1;c=0;for(a=b.length;c<a;c++)if(1==e&&d===b[c]||d.toLowerCase()===b[c].toLowerCase())return!0;return!1}if(arguments&&"-v"===arguments[0])return{plugin:"formatTime",version:"2.0"};var b=function(){if("undefined"!==typeof window.s_c_il)for(var b=0,c;b<window.s_c_il.length;b++)if(c=window.s_c_il[b],c._c&&"s_c"===c._c)return c}();"undefined"!==typeof b&&(b.contextData.formatTime="2.0");if(!("undefined"===typeof f||isNaN(f)||0>Number(f))){b="";if("string"===typeof d&&"d"===d||("string"!==typeof d||!h("h,m,s",d))&&86400<=f){var c=86400;var g="days";b=isNaN(e)?1:c/(e*c)}else"string"===typeof d&&"h"===d||("string"!==typeof d||!h("m,s",d))&&3600<=f?(c=3600,g="hours",b=isNaN(e)?4:c/(e*c)):"string"===typeof d&&"m"===d||("string"!==typeof d||!h("s",d))&&60<=f?(c=60,g="minutes",b=isNaN(e)?2:c/(e*c)):(c=1,g="seconds",b=isNaN(e)?.2:c/e);b=Math.round(f*b/c)/b+" "+g;0===b.indexOf("1 ")&&(b=b.substring(0,b.length-1));return b}};
/******************************************** END CODE TO DEPLOY ********************************************/

使用外掛程式

formatTime 函數會使用以下引數:

  • ns (必要,整數):要轉換或格式化的秒數
  • tf (可選,字串):傳回秒數的格式類型;預設為秒
    • 如果您想要以天為單位的時間,請設為 "d" (預設會捨入為最接近的 1/4 天基準)
    • 如果您想要以小時為單位的時間,請設為 "h" (預設會捨入為最接近的 1/4 小時基準)
    • 如果您想要以分鐘為單位的時間,請設為 "m" (預設會捨入為最接近的 1/2 分鐘基準)
    • 如果您想要以秒為單位的時間,請設為 "s" (預設會捨入為最接近的 5 秒基準)
  • bml (可選,數字):捨入基準的長度。預設值為 tf 引數中所列的基準

此函數會使用您在 tf 引數中指定的單位來傳回格式化的秒數。 如果 tf 引數未設定:

  • 小於一分鐘的值會捨入為最接近的 5 秒基準
  • 介於一分鐘到一小時之間的值,會捨入為最接近的 1/2 分鐘基準
  • 介於一小時到一天之間的值,會捨入為最接近的四分之一小時基準
  • 大於一天的值會捨入為最接近的天基準

範例

// Sets eVar1 to "10.5 hours".
// 38242 seconds equals 10 hours, 37 minutes, and 22 seconds. Since the tf argument is not set, the value returned is the number of seconds converted to the nearest quarter-hour benchmark.
s.eVar1 = formatTime(38242);

// Sets eVar4 to "10.75 hours".
// 38250 seconds equals 10 hours, 37 minutes, and 30 seconds. This value rounds up to the nearest quarter hour.
s.eVar4 = formatTime(38250);

// Sets eVar9 to "637.5 minutes".
s.eVar9 = formatTime(38242, "m");

// Sets eVar14 to "640 minutes".
// The tf argument forces the returned value to minutes, while the bml argument forces the value to the nearest 20-minute increment.
s.eVar14 = formatTime(38242, "m", 20);

// Sets eVar2 to "126 seconds", the closest 2-second benchmark to 125 seconds.
s.eVar2 = formatTime(125, "s", 2);

// Sets eVar7 to "3 minutes", the closest 3-minute benchmark to 125 seconds.
s.eVar7 = formatTime(125, "m", 3);

// Sets eVar55 to "2.4 minutes, the closest 2/5-minute benchmark to 145 seconds.
s.eVar55 = formatTime(145, "m", .4);

版本記錄

2.0 (2021 年 3 月 19 日)

  • 將版本編號加入為內容資料。

1.1 (2018 年 5 月 21 日)

  • 新增 bml 引數,讓捨入更具有彈性

1.0 (2018 年 4 月 15 日)

  • 首次發行。

本頁內容