问题标签 [optimizely]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 将第 3 方脚本推迟到下一个 AngularJS 摘要
我有一个操纵 DOM 的指令,而不是第 3 方脚本:
Angular 似乎只有在 externalService.do() 发生后才会消化我的更改,因此 externalService 没有机会施展他的魔法。
有没有办法强制角度将其更改应用于视图?$apply 和 $digest 抛出一个错误,$timeout of 500ms 解决了我的快速机器中的问题,但在较慢的机器中无法做到这一点,无论如何我想避免使用超时。
我使用的第 3 方服务是 Optimizely(A/B 测试服务)。我没有找到解决这个问题的任何资源。
谢谢!
angularjs - 如何优化获取活动实验/变体名称?
我尝试将 Optimizely 与 AngularJS 集成,并且我想根据正在运行的变体显示不同的模板。我会向 Angular 应用程序添加一个常量函数,该函数将检查一个变体/变体是否处于活动状态。
喜欢
我在 Optimizely 文档中找不到有关如何获取此数据的信息。
reverse-engineering - How can I make sure that only one Optimizely Experiment is running on a page and it gets fair traffic?
Using Optimizely I can create one or more experiments in a same project, but there is no guarantees that they will not executed simultaneously. For instance, if i'll create 2 experiments for a particular URL with Traffic Allocation for 100% visitors - all of them will receive both experiments. This isn't good, as experience given by first experiment will be combined with second one; they may conflict and potentially affect final numbers.
Official documentation tells that you can use custom JavaScript to setup experiments in the way that only one of them in a group will be activated for a visitor:
https://help.optimizely.com/hc/en-us/articles/200040205-Mutually-exclusive-experiments
I'm ok with JavaScript, but unfortunately, it requires to have predefined list of exclusive experiments in code and copy-paste that script into each of experiments. Also, that technique doesn't takes into account Targeting rules, as having all those experiments in a list doesn't guarantees that all of them will be activated.
I'm looking for JavaScript, which can be placed above/below Optimizely snippet. That code should know which of experiments are matching for current page view and activate only one of those experiments.
Update: 12 July 2014 Optimizely updated their code, so it seems like now everything becomes even more complicated. Anyway after long reverse-engineering and debugging session, it looks like problem might be solved in case if we can randomize order of existing experiments before testing them for traffic allocation rules (after today's changes - unsegmented audience).
sorting - A/B 测试搜索结果排序选项
我有一个搜索结果页面,用户可以通过下拉控件选择不同类型的排序。我需要测试其中一个排序选项的变体,比如说相关性(变体 B 背后有不同的相关性定义算法)。
诀窍是记住用户选择的排序选项,并且下次用户访问搜索结果页面时 - 他的默认排序选项等于他最后选择的选项。例如,假设某个用户前一段时间选择了价格作为排序选项(从最低到最高),这意味着他将永远不会再获得按相关性排序的结果,直到他明确选择“相关性”排序选项。
问题是 - 如果仍然可以按原样测试页面的变体,或者我需要设置/限制 A/B 测试仅用于用户选择“相关性”作为排序选项的情况,以这种方式进行比较仅通过此特定选项的变体进行用户转换?
谢谢你的任何提示。
google-analytics - 优化集成到谷歌分析
我一直在尝试将优化集成到谷歌分析中,但事实证明它比我预期的要困难一些。我是通过 gtm 来做的,这使得它有点复杂。我创建了一个宏
并将其加入通用分析标记中的自定义维度,这意味着这将在每个页面上触发,但维度始终返回为:
'运行命令:ga("set", "dimension14", undefined)'
我真的会在这方面提供一些帮助,因为我正在苦苦挣扎,而优化团队也不知道该怎么做。
谢谢。
php - Optimizely - 如何访问变体名称
我正在尝试以最优化的方式创建一个目标。
我有一个产品页面 product.php,有人通过单选按钮选择产品。将数据发布到购物车页面。有 3 个变体加上原来的一个,所以总共有 4 个变体。
数据发布如下
只有 3 个 id,所以可以说 id 是 277,278 和 279
现在我已经毫无问题地创建了变化。我现在想在 cart.php 上设置一个目标,目标是:
但基本上会有 12 个目标,因为会有:
产品 277 通过原始产品添加到购物车 产品 277 通过变体 1 添加到购物车 产品 277 通过变体 2 添加到购物车 产品 277 通过变体 3 添加到购物车
有没有办法通过自定义目标来做到这一点,还是只能通过 API 实现?我发现他们网站上的文档有点混乱,找不到任何与此相关的具体内容,等待了几天他们的支持部门的回复,但没有回复。
magento - 优化安全页面/单页结帐实验
最近我一直在尝试使用优化(安全页面)在我的单页结帐上运行一个实验,但我似乎无法让它加载我的 cookie 数据。
我按照优化的指南来加载特定于会话的信息,但没有运气。
- 在浏览器选项卡中打开您的站点并导航到您要编辑的页面。这可能需要登录、将商品添加到您的购物车或填写表格的一部分。采取确切的步骤将您带到要编辑的表单的页面。
- 接下来,在同一浏览器的相邻选项卡中打开 Optimizely,并使用您要测试的页面的 URL 创建一个实验。
- 为什么?如果您直接转到另一个选项卡中的 URL,编辑器将加载页面;一旦您可以将页面重复加载到单独的选项卡中,那么 Optimizely 应该能够在编辑器中加载页面。
请帮忙。
optimizely - 如何在 Optimizely 的变体页面上更改变量
我正在尝试优化加载新的设计模板。
CMS 将新模板存储在备用 URL 中。这些文件被加载到页面的部分。
原始模板加载如下:
变量名称1 = /url1/ 变量名称2 = /url2/
我们需要将与变量一起使用的 url 更改为:
变量名称1 = /url3/ 变量名称2 = /url4/
我猜我们可能不得不使用 append 函数,类似于这个(这是用于向页面添加新的 CSS 样式表): $("head").append("");
但我似乎无法让它在优化中工作。
pageviews - 优化:衡量页面展示次数
我想在我的页面上包含一个新的链接块。但在我激活它之前,我想测试它是否有意义。
因此,在关于浏览量目标的Optimizelys文章之后,我设置了一个测试来衡量浏览量转换。但显然我做错了。
作为一个简化的示例,我们假设,我的所有页面都具有以下模式的 URL:www.mydomain.com/page_ [0-9]+.htm (例如 www.mydomain.com/page_123.htm)。
我的新链接将引导用户进入上述模式的另一个页面。
问题似乎是 Optimizely 并没有真正计算访问的页面数量,而是将第一次访问计为一次转换(假设 URL 模式始终匹配)。 所以我的两个测试变体都得到了相同的结果。
我在这里做错了什么?
shopify - 在 Shopify 中使用 Optimizely 测试价格
我正在寻找使用 Optimizely 测试 shopify 中的价格。
我尝试更改产品页面本身的价格(只是文本)并将价格提高了 5%。当我将产品添加到购物车时,产品的价格仍然是正常价格。
我意识到可能存在一个包含任何特定产品价格的液体变量,我可以在 Optimizely 的代码编辑器中将其更改为简单地增加 5%。
我想我可以通过使用:{{ product.price | 次:1.05 | 钱 }},
但我不确定如何在优化编辑器中实现,或者这是否是正确的路径。