这种解决方法只在某些情况下是必要的,比如您想要为Web Widget使用表单,而不是在帮助中心。请参考创建和应用品牌票务表格找出如何针对不同品牌有选择地展示不同的形式。
我已经为我的所有品牌创建了多个帮助中心,现在我准备为每个品牌推出票务表单。但是等等!我不希望主品牌的表单出现在辅助品牌的帮助中心。希望这个小技巧能解决这个问题。
本文涵盖两个场景:
查找表单id
无论您是想隐藏表单还是单独显示表单,为了能够针对单个表单,您必须首先找到表单id。本文将不讨论创建表单。有关创建表单的详细信息,请参见,创建票证表单以支持多种请求类型。
下面是如何在代理界面中快速找到id:
- 在管理中心,点击对象和规则图标(),然后单击门票>表格。李< / >
- 单击要隐藏或用作独立窗体的窗体的名称。李< / >
- 注意地址栏中的表单ID,如下图所示:
- 对要隐藏或隔离的每个窗体重复此操作。李< / >
每个品牌显示多个表单
通常情况下,每个帮助中心将管理多种类型的请求。本节将向您展示如何有选择地隐藏不希望出现在特定品牌的帮助中心中的任何票据表单,同时仍然允许最终用户选择剩余的表单。
的代码
现在我们已经记录了要隐藏的票证表单上面描述的,我们现在可以用下面的代码来瞄准它们。
控件中放置其中一个版本的代码$(文档)时函数(){
在script.js
模板,以便自定义帮助中心。
选项1
在第一个选项中,只需重复表单id所在的行。我的表单id是12775
和31495
。
//删除下拉选择器中的选项$('#request_issue_type_select option[value="12775"]').remove();$ (" # request_issue_type_select选项(value = " 31495 "]) .remove ();//在嵌套输入创建后删除选项。$ (' .nesty-panel ')。on('DOMNodeInserted', function(e){$(this).children('ul').children().remove('#12775');(美元)定格(ul)定格().remove (# 31495);});
选项2
现在在第二个选项中,我决定使用数组,所以我们可以简单地输入我们想要隐藏在方括号内的表单列表[12775,31495]
。必须用逗号分隔每个ID。这将循环遍历函数,直到删除所有id。
美元。each([12775,31495], function(index, formValue) {$('#request_issue_type_select option[value="' + formValue + '"]').remove();$ (' .nesty-panel ')。on('DOMNodeInserted', function(e){$(this).children('ul').children()。remove('#' + formValue);});});
每个品牌显示一个表单
现在你可能会说,“每个品牌我只需要一个表单。”这也是一个完全可以接受的工作流程!你不需要隐藏所有额外的品牌,你可以改变“提交请求”链接,直接将用户发送到你的一个表单,然后隐藏表单上的“请在下面选择你的问题”下拉列表。
的代码
要将用户发送到一个表单,您需要自己的表单ID上面的步骤。
我们可以通过使用帮助中心模板语言Curlybars轻松替换“提交请求”链接。您可以找到更多的Curlybars和模板文档在这里。
您将需要将此代码放置在Header模板中,您希望在其中显示“提交请求”链接(请确保替换ticket_form_id
用你自己的)。这需要考虑本地化,所以如果您的帮助中心提供多种语言,则链接将以适当的语言提供:
< a href = " {{page_path‘new_request ticket_form_id =‘17369’}}" > {{t ' submit_a_request}} < / >
从票务表单中删除表单选择下拉列表
接下来,我们要从票务表单中删除表单选择下拉菜单,这样用户就不会为当前品牌选择另一个表单。控件中放置此代码style.css
模板的帮助中心:
.request_ticket_form_id{显示:没有;}
在文本框中输入CSSstyle.css
模板。
它是如何工作的
当生成新的请求页面时,所有面向最终用户的票据表单都可以在下拉列表中使用。第一个示例删除了您不希望为每个指定品牌显示的表单选项,第二个示例只是将用户引导到您的品牌的特定表单。
7评论
我们有两个品牌,每个品牌都有一个帮助中心。我们有一个与两个品牌相关的特殊票务表单,我们可以在两个帮助中心看到这个表单。
品牌1 HC
品牌2 HC
用户可在“品牌1”表格1或“表格2”上创建票证。当使用表单2时,用户无法在我的活动中看到生成的票证。表单2与票务表单设置中的两个品牌相关联。门票本身只能与一个品牌相关联。
有没有办法让使用表格2的门票在“我的活动”中可见?
你好贾斯汀!
你能确保你没有一个自动为表单分配品牌的触发器吗?如果支持中的品牌发生变化,将控制最终用户可以使用哪个品牌的票证。
如果您删除了触发器中设置品牌的条件,则票证将保留它从该品牌的帮助中心继承的品牌。
杰克Bantz
你说得对!当使用表单2时,品牌会从默认品牌改变(触发),所以用户不会在他们的活动中看到票,除非他们去HC购买品牌2。
我们正在努力统一单一品牌和HC下的形式,所以这可能是一个没有实际意义的点。
谢谢你指出这一点!
杰克Bantz谢谢分享!我想知道我们是否有可能改变“Please choose your issue below”的措辞?也可以用动态内容代替它吗?谢谢。
嗨,希礼,
是的!这个字符串是可定制的,可以使用动态内容。您可以进入Admin > Manage > Ticket Forms > End User Instructions设置要显示的文本。
嗨,我在标题中添加ticket_form_id。所以代码是这样的:
< div class = " nav-wrapper-desktop”>
我这边所做的只是移除
然后用
最终的结果如下:
请登录留下评论。