我刚注意到 Discourse 会向 Google 提供该网站的非 JS 版本。
我一直使用 JS 来设置网站的标题、元描述、规范链接等,而且看起来 Google 在渲染客户端 JavaScript 方面做得越来越好(我指的是我的常规网站,而不是 Discourse)。
有没有办法禁用此功能,而不给 Google Bot 提供特定版本?
另外,Discourse 在那里有一个**“do-follow”**链接指向它自己:“Powered by Discourse”。我能对此做些什么吗?
编辑 1: 我还应该补充一点,我不介意在其中包含一个 Discourse 链接,也许是 no-follow,或者 do-follow 但不是全站的。
编辑 2::我在 GitHub 上看到,在移除链接方面我有一些选择(https://github.com/discourse/discourse/commit/82693daa3d073805d4beb80e052b0630496387a0#diff-a161d93800e35fd752c7f56f695d70a3)- 有什么建议我应该倾向于哪种吗?
1 个赞
Stephen
(Stephen)
4
也许有必要解释一下为什么需要这样做。Discourse 的开箱即用行为对大多数人来说都很好,基于你的账户,是你上面的选择造成了冲突。
4 个赞
抱歉
我说我将 JavaScript 用于标题、规范标签和元描述,是指用于我的常规网站,而不是 discourse 设置。我只是想传达我与 Googlebot 和 JS 的经验
我尝试调整了 robots 文件,但这似乎并没有将 JavaScript 版本提供给 Google
编辑: 我也开始理解 discourse 有多像一个应用程序,是客户端渲染的——非常酷的东西。仍然有兴趣看看 Googlebot 能用它做什么。我想象该算法会非常喜欢这种简洁的设置。
1 个赞
pfaffman
(Jay Pfaffman)
7
对。一切都是一个应用程序。而且谷歌几乎不可能理解它,所以需要有一个第二个应用程序,专门用于谷歌,这就是为什么它发送静态版本的原因。
2 个赞
感谢您在此回复@pfaffman ..
只是为了满足好奇心,有没有办法测试一下?- 我只是好奇如果我们让谷歌试试,网站会是什么样子。他们最近开始真正接受客户端 JavaScript 的想法。至少从 SEO 角度来看,尝试一下是有意义的。
非 JavaScript 版本将链接显示为与文本相同的颜色。所以你无法分辨什么是链接(如果你是谷歌机器人)。
pfaffman
(Jay Pfaffman)
9
源代码是可用的,所以你只需要在那里更改一些东西。我对代码相当熟悉,但不知道该从哪里入手。
我认为,如果这是真的,早就有人给出答案了,因为有很多人比我更了解 Discourse,而且比我们俩都更了解 SEO,他们都非常关心这个问题。
你真的认为谷歌爬虫是色盲,会通过文本颜色来判断什么是一个链接吗?它难道无法读取 HTML 来查看 href 是什么吗?这似乎不太可能。
1 个赞
Jagster
(Jakke Lehtonen)
10
它实际上是完全色盲的 
相当多的人,甚至 SEO 专家,都认为机器人看到的网站和我们在屏幕上看到的一样。
好了,我现在有点离题了。
3 个赞
我曾想在这里(meta)开一个新话题来讨论这个问题(我对 GitHub 上的 pull requests/commit 术语不太熟悉)。
相信我,我也很震惊……我也不敢说自己是 SEO 新手,我参与 SEO 已经十多年了。这里发生的事情绝对是负面排名因素。这可能不会损害“Let’s Encrypt”的 SEO,但对小型网站肯定有影响。
我认为大多数 Discourse 用户在 SEO 方面可能与你持相同看法。不太在意。这里有巨大的隐藏潜力。
是的,他们知道这是一个链接,他们也知道它和文本一样是黑色的,用户不喜欢这样。别忘了,谷歌现在根据非 JavaScript 版本看到的内容进行排名。
关于“Powered by Discourse”外部链接:
我记得看过一段 John Mueller/Matt Cutts(谷歌 SEO 人员)的视频,他们提到隐藏的内部链接(由于菜单、JavaScript 等)实际上不会造成损害。
但他还提到,如果这是一个外部链接,你只显示给 Googlebot 而不显示给最终用户,那可能会有问题。
说实话,我觉得我像是在另一个时空。我向你保证,一旦这个问题解决了,所有 Discourse 论坛的谷歌自然流量都会大幅增长。
Stephen
(Stephen)
12
说出像上面这样的断言真的很容易,尤其是当你自己承认你不了解内部运作或导致当前状态的设计决策时。
说实话,你在这里无法保证任何事情,除非你能说服具备所需技能的人来修改代码,否则这一切都将是假设性的。
如果你有预算来探索这一点,Marketplace 可能是个不错的起点。
5 个赞
我有一个非常广泛的想法,这个应用程序大量使用 JavaScript,而且谷歌过去曾有过 JavaScript 的问题。所以你们采用了我们现在这种简单的非 JavaScript 的方式。我的论点是至少尝试一下,看看启用 JavaScript 后谷歌会渲染出什么。
我实际上认为我低估了这一点,有些人也同意我的看法 在 Reddit 的技术 SEO 版块
题外话:
正文中的超链接与文本颜色相同似乎是最近的一次更新。谷歌页面上的旧版本显示链接是蓝色的。
Mevo
14
我知道这是一个相当老的话题了,但由于我现在对所有 Discourse 和 SEO 主题都感兴趣,而且 Nader 似乎还在,让我们把它重新激活一下。
我也不太喜欢 Discourse 为 Google 提供与为其他人提供不同的东西。我一直听说这是绝对不能做的事情,因为 Google 非常不喜欢这样做。
这是否是问题之一,甚至是主要问题,即 Discourse 在启用 JavaScript 时加载速度很慢?
这已经通过为 Google 提供静态版本并显示“加载中”动画来解决,以表明有些东西很快就会出现。“有些东西”是的,但不是用户搜索的信息以及他点击链接的原因。这需要时间才能显示。通过提供 JavaScript 版本,Google 会知道这一点。而目前它在某种程度上被欺骗了,使其不知道需要多长时间。
或者我说错了?
这是个好方法吗?Google 无论如何都知道吗?例如,从发送回来的 Chrome 浏览器统计数据中。这会不会受到排名惩罚?
2 个赞
我一直想对此做出回应;只是我是一个拖延症大师。
归根结底,我保留默认的 Discourse 行为,因为其他任何东西都太难维护了。
我很有信心,在我进行这方面的实验时,JavaScript 版本受到了 Google 的更好评价。当它获得更好的版本时,印象似乎总会跳升。
Google 搜索的 John Mueller 回应了我们关于此事的推文,这是最初的推文。
我仍然认为开源社区的某种解决方案将非常有益。也许是服务器端渲染。
我明白这对 Discourse 来说是一件大事,但想象一下,如果 Google 获得了更好的 UI/布局等,所有 Discourse 论坛的流量将会有多大的增长。
不过,Google 的 John 说这应该没问题,所以应该考虑到这一点。
https://twitter.com/JohnMu/status/1644803668493971456
1 个赞
Falco
(Falco)
18
谢谢分享。
然而,这个回复印证了我们目前的方法,因为它涉及到尽快让内容被索引 
7 个赞
我只是想补充一点,我在一个网站上的 Google 浏览量和点击量正经历着超越指数级的增长*!看来有些事情做得对了!
*这可能不会持续太久,但我不会因此责怪 Discourse!
4 个赞
我明白了,如果我能补充一点看法……据我所知,无论其背后的技术栈如何,googlebot 爬虫在快速查找新内容/页面方面都做得相当不错。这不可能是 Discourse 使用爬虫版本的唯一原因,但我理解其影响。
也许现在随着人工智能和互联网的变化,页面搜索引擎优化(on-page SEO)的概念将变得越来越无关紧要,而内容/数据本身才是最重要的。
Mevo
21
@stance455 如果 Discourse 提供 JS 版本,Googlebot 会注意到(实际)内容显示需要多长时间。这对 SEO 非常不利。
问题仅出现在 Discourse 初始加载时。但对于从搜索引擎点击链接的用户(因此,也对 Google 而言)来说,这是一个重要指标。
1 个赞