无法从Zendesk中发布的网页获取文章属性

问题描述 投票:0回答:1

当我在 ZenDesk 模板的 script.js 中添加以下内容时,成功返回 user 属性:

 var userRole = HelpCenter.user.role;
 console.log(userRole)

这也有效

 var isAdmin = HelpCenter.user.is_admin;
 console.log(isAdmin)

但是,我无法返回 article 属性。例如,从此文档绘图,以下代码将返回

TypeError: Cannot read properties of undefined (reading 'id')

var articleId = HelpCenter.article.id;
console.log(articleId)

并且,按照本文档,以下代码将返回

TypeError: Cannot read properties of undefined (reading 'name')

var categoryName = HelpCenter.category.name;
console.log(categoryName)

我使用前两个代码片段将用户角色和管理员状态发送到 Google Analytics 4 中的自定义定义。

我也想将页面类别发送到 Google Analytics 4。

如果有更好的方法将页面类别等文章属性发送到 Google Analytics 4,我将不胜感激。

谢谢您随时光临。

javascript html google-analytics zendesk zendesk-api
1个回答
0
投票

您正在访问的

HelpCenter
对象仅提供有关 zendesk 帐户和当前用户的信息,它不应该具有任何文章或类别属性。

您链接的文档是指可在帮助中心模板中使用的对象。它们不能按照您尝试的方式使用,它们会作为占位符添加到您的 html 中。请参阅此页了解更多信息。

为了访问文章或类别信息,您需要使用 Zendesk 帮助中心 api 和/或使用占位符在 html 中的某处添加信息,然后使用 javascript 进行检索。例如,在您的文章页面模板中,您可以添加文章 ID,如下所示:

<article id="main-content" class="article" data-articleId={{article.id}}>

然后,对于文章页面上运行的任何脚本,按如下方式访问它:

const articleId = document.querySelector("article").dataset.articleId
© www.soinside.com 2019 - 2024. All rights reserved.