深度视图中语言首选项的胡须变量?

时间:2015-11-12 09:58:19

标签: branch.io

我的公司正在使用branch.io运行应用下载的电子邮件广告系列。由于用户可以在桌面或手机上打开指定链接,我们需要支持这两种情况。

我们已经实施了一个分支“Deepview”,因为我们喜欢文本到下载功能的简易性。问题是,似乎没有办法提供此视图的本地化版本,我们支持许多不同的语言。

因为我无法在自定义深度视图中运行脚本(branch.io剥离它们,我假设出于安全原因),并且因为我无法访问语言mustache变量,所以我无法更改内容按地区。

有没有办法根据URL参数本地化深度视图或(理想情况下)基于window.navigator.language?s?如果我只是为用户的language_code公开了一个胡须变量,那么一切都可以工作。

我试图将其黑客入侵:

.lang-en .phone-number-label:after {
    content: "Phone Number";
}
.lang-en .btn-submit-label:after {
    content: "Send Me The App";
}
<div class="container lang-en">
  <h3 class="phone-number-label"></h3>

  <input name="phone" id="phone" placeholder="+1 (123) 123-1234" type="text" class="phone-input"></input>

  <button id="phone-submit" type="submit" class="phone-submit">
    <span class="btn-submit-label"></span>
  </button>
</div>

'lang-en'旨在按如下方式生成:

<div class="container lang-{{language_code}}>...</div>

我通过在网址中高举劫持$og_description来简单地解决这个问题:

https://bnc.lt/my-branch-link?$og_description<language_code_provided_as_query_param>

但过了一会儿,{{link_data.$og_description}}完全停止进入胡子模板(当作为url param传递时)。这也可能不是很好的做法。让我知道是否有人在这里有解决方案,或者branch.io开发人员是否愿意在他们的胡子模板数据中公开这个变量。

1 个答案:

答案 0 :(得分:3)

我有个好消息!分支Deepviews使用Handlebars,利用它可以让你设置&#34;获取应用程序&#34; - &#34;安装后立即查看此内容&#34;和您的深层链接值的其他变量。让我向您展示一些代码和一个我刚刚为您构建的示例的屏幕截图。

代码示例:

<a href="{{action}}" class="cta-button text-light{{#unless app.og_image_url}} cta-button--no-app-icon{{/unless}}{{#if no_data}} cta-button--no-app-icon{{/if}}">{{#if link_data.cta_text_localized}}{{link_data.cta_text_localized}}{{else}}Get The App{{/if}}</a>

Handlebars开始使用#34;获取应用程序&#34;按钮在这里:

{{#if link_data.cta_text_localized}}{{link_data.cta_text_localized}}{{else}}Get The App{{/if}}

拼出来,如果深层链接值&#34; cta_text_localized&#34;存在于此链接中,然后将该字符串用于&#34;获取应用程序&#34;按钮,否则使用&#34;获取应用程序。&#34;您可以在信息中心的营销部分配置深层链接数据,位于&#34;添加链接&#34;对话框,附截图:

Branch dashboard deep link configuration

我的ES自定义Deepview的屏幕截图,请注意已更改的&#34;获取应用程序&#34;按钮: Branch ES Deepview

正如您所看到的,使用液体标签从我的深层链接值中抓取文本&#34; cta_text_localized&#34;我设置了#34;获取应用程序&#34;按钮到自定义字符串。使用此方法,您可以为要显示的每种语言创建链接,相应地设置深层链接值,而模板始终从同一变量中提取。