如果我在帖子中插入链接,我可以看到有多少人点击了该链接。但如果我将链接放在单独一行,它被生成摘要框(onebox)后,我就再也看不到点击次数了。
这篇帖子进一步描述了该问题:
答案分为两部分。
首先,必须启用在新标签页中打开链接的选项。(从技术上讲,我不太理解这一点,因为其他链接在不启用此选项的情况下也能被统计点击次数。)
其次…
因此,用户最常点击的主链接永远不会被统计。同样,我也不理解这些链接在技术上的区别,以及为什么其中一个会被统计而另一个不会。
尽管我不太理解背后的技术原因,但我非常希望摘要框链接的点击次数能够被一致地统计。
6 个赞
我已经检查了仪表板中的所有设置,但没有找到用于启用在新标签页中打开链接的复选框……不过链接确实已经在另一个标签页中打开了。
我们尝试点击文章标题以及链接本身——两者的计数器都没有反应。
这里有个棘手的问题:计数器在一两天内突然开始工作,随后又停止了。我们完全没有进行任何更改。我还询问了一位版主和几位用户,看他们是否在发布的链接旁看到过点击计数。没有人看到过,因此我知道这并非仅因为我作为管理员的身份所致。
和您一样,我也希望 Onebox 链接的点击能够被一致地统计。
编辑:我想补充说明,对于在空白空间后发布的链接(因此不会被 Onebox 处理),计数器可以正常工作……只是对于 Onebox 处理的链接则不行。
2 个赞
dax
(Daniela)
3
我上周已经启用了该设置,请搜索 default other external links in new tab。此设置将适用于在该设置启用后注册您网站的所有新用户。旧用户可以从其个人资料中激活它(如果我们可以通过控制台为旧用户批量启用该设置)。
我尝试点击该主题前两个帖子中的两个 onebox(https://forum.nodders.net/t/2019-plastic-waste-and-recycling/167),计数已从 0 增加到 1。可能是进行测试的用户是旧用户,未在个人资料中启用外部标签页设置,或者该用户尝试通过右键单击链接本身直接在新的窗口中打开链接。
3 个赞
JimPas
4
大概就是这样。我会通知大家需要在个人资料中进行更改……就像我一样。
谢谢。
另外请注意,点击您自己的帖子中的链接不会增加计数。
3 个赞
JimPas
6
@dax, @codinghorror,我找到了为什么链接计数器在我们论坛对我及其他人有效的原因。在“偏好设置/界面/其他”中,虽然我勾选了“在所有外部链接在新标签页中打开”,但我也勾选了“在浏览器图标上显示计数”。显然,后者会覆盖前者。我取消勾选了“在浏览器图标上显示计数”,保存后检查了一篇文章……计数器就出现了!
我还发现了一个小细节。当用户发布链接,而 OneBox 尝试但未能将其转换为 OneBox 卡片(即保留原链接)时,如果该链接前面没有空格,链接点击计数器将不会工作。我刚刚编辑了用户的一篇文章,其中正好出现了这种情况,我添加了一个空格,计数器就开始显示了。
2 个赞
adamengst
(Adam C. Engst)
7
@dax 对于为何此设置是显示 onebox 点击徽章的必要条件,您有什么看法吗?我可以为我的站点更改此设置,但若要使其发挥作用,我不得不批量更改 7400 多名用户的设置,而我并不想这么做,因为这只会引起混淆。
2 个赞
我也不明白你为何要费心,因为单盒点击量无论如何都不会被计入,除非是那些点击最不显眼链接的少数人。这意味着,你本可以选择不显示任何点击数据,却反而展示了错误的数据(人为偏低),在我看来,这要糟糕得多。
1 个赞
adamengst
(Adam C. Engst)
9
说得对——理想情况下,onebox 也应该统计其标题的点击次数。
4 个赞
rizka
(rizka)
11
这以前确实有效。Onebox 点击量在我们网站上会被统计。但后来不知从何时起就不起作用了。我记不清确切时间,但我觉得已经不止一年了。我认为这是一个回归问题,而不是真正的功能请求。
@evantill,能否详细说明一下你的组件具体是做什么的?
1 个赞
这看起来是一小段 JavaScript,假设它能正常工作,可以直接添加到核心代码中。
evantill
(Eric Vantillard)
13
只是一个简单的脚本,用于将点击 onebox 内部链接的操作替换为点击标题栏链接的操作。
// 如果点击发生在 onebox 主体内部
$('.onebox-body a').on('click.onebox-track-url', function(event) {
event.preventDefault(); // -> 忽略 onebox 内部的点击事件
var headerUrl = $(event.target).closest('.onebox').find('header a'); // 选择标题栏链接
// 改为点击标题栏链接以更新追踪计数器
if (headerUrl.length > 0) {
headerUrl[0].click(); // -> 模拟点击标题栏链接
}
});
</script>
1 个赞
evantill
(Eric Vantillard)
14
看起来 onebox 主体内的链接未被追踪:
如果链接位于 .onebox-body 中,isValidLink() 会返回 false。
1 个赞
evantill
(Eric Vantillard)
15
一个解决方案是在 onebox 中添加一个新设置,以启用对 onebox 内部链接的跟踪,并在该情况下为 onebox 内的链接添加 track-link 类?
1 个赞
从这个讨论串中,我不清楚停止追踪 onebox 点击是有意为之的决定,还是仅仅是一个可以提交拉取请求(pull request)来修复的 bug。
3 个赞
riking
(Kane York)
17
将拟议的修复方案描述为以下内容是否正确?
“如果链接位于 onebox 主体内,则查找该 onebox 的 URL。如果该 URL 与链接相同,则统计点击次数;否则忽略。”
4 个赞
Onebox 中除了被 oneboxed 的 URL 之外,还能包含其他链接吗?我原以为是不行的。