我的办公室里有一个 SEO 团队,他们的格言之一是,在 HTML 中内嵌大量 <script> 块是非常糟糕的。作为一名开发人员,这对我来说毫无意义。谷歌搜索工程师是地球上最聪明的人,他们肯定知道如何跳过这些障碍吗?
我的直觉是,最小化脚本块是一种来自搜索引擎优化早期的迷信,在当今世界它毫无意义。有人对此有任何见解吗?


根据我们的 SEO 专家的说法,脚本块(尤其是那些内嵌的脚本块,或者出现在实际内容之前的脚本块)非常非常糟糕,并且会让谷歌机器人在处理您的实际内容之前放弃。对我来说似乎很牛,但我想看看其他人怎么说。

有帮助吗?

解决方案

我已经很久没有玩过阅读谷歌的茶叶游戏了,但你的 SEO 专家可能会这么说有几个原因

  1. 三四年前,有一种传统观点认为,搜索引擎算法会给页面中较早出现的搜索词赋予更多权重。如果页面 A 和 B 上的所有其他条件都相同,并且页面 A 在 HTML 文件中比页面 B 更早提到小部件,则页面 A “获胜”。这并不是说谷歌的工程师和博士员工无法跳过这些障碍,而是他们在自己的存在中发现了一个有价值的指标。考虑到这一点,很容易看出除非某些内容“需要”(参见下面的#2)出现在文档的头部,否则痴迷于 SEO 的人会希望将其删除。

  2. 不提供快速解决方案的 SEO 人员往往是精心设计、验证/符合 HTML/XHTML 结构的支持者。内联 Javascript,尤其是对网络一无所知的软件工程师倾向于青睐的那种,让这些人(我就是其中之一)感到愤怒。对脚本标签本身的偏见也可能源于雅虎和其他公司在优化 Ajax 应用程序方面所做的一些工作(除非必须,否则不要让浏览器解析 Javascript)。不一定与 SEO 直接相关,但白帽 SEO 类型将采用最佳实践。

  3. 也有可能你们互相误解了。 内容 由 Javascript 生成的内容在 SEO 领域被认为是有争议的。这并不是说 Google 无法“看到”这些内容,而是人们不确定它的存在将如何对页面进行排名,因为许多黑帽 SEO 游戏都围绕着使用 Javascript 隐藏和显示内容。

SEO 充其量是克里姆林宫学,更坏的是黑帽子很久以前就赢得了这个领域。我主动提出的免费建议是,不要参与 SEO 游戏,向您的经理提供估计,以便实施与 SEO 相关的更改需要多长时间,然后就这样。

其他提示

避免使用内联/内部 Javascript 有几个原因:

  • HTML 是为了 结构, ,而不是行为或风格。出于同样的原因,你不应该将 CSS 直接放在 HTML 元素中,你也不应该将 JS 放在其中。
  • 如果你的客户端不支持 JS,你就推送了很多垃圾。浪费带宽。
  • 外部JS文件被缓存。这可以节省一些带宽。
  • 你将会有一个 下放化 JavaScript。这会导致代码重复以及随之而来的所有已知问题。

我不知道这方面的搜索引擎优化(因为我永远无法区分曼波詹博和真正的交易)。但正如 Douglas Crockford 在他的一次 JavaScript 网络广播中指出的那样,浏览器总是在每个元素处停止解析脚本。因此,如果可能的话,我宁愿交付整个文档并尽可能晚地使用脚本增强页面。就像是

<head>
    --stylesheets--
</head>
<body>
  Lorem ipsum dolor
  ...
  ...
  <script src="theFancyStuff.js"></script>
</body>

我在一些地方读到 Google 的蜘蛛程序只对页面的前 100KB 建立索引。页面顶部 20KB 的 JS 意味着稍后 Google 将看不到 20KB 的内容,等等。

请注意,我不知道这个事实是否仍然正确,但是当将它与您在 SEO 论坛的黑暗弱点中发现的其他迷信/谣言/彻头彻尾的江湖骗术结合起来时,它开始产生一种奇怪的感觉。

除此之外,正如其他答案中提到的,内联 JS 就表示、内容和行为的分离而言是一件坏事。

你的 SEO 专家有点偏离主题,但我理解你的担忧。这与做法是否正确,或者某些数量的脚本标签是否被 Google 不当对待无关,而与页面权重有关。Google 在(我认为)150KB 之后停止缓存。页面包含的内联脚本越多,重要内容未被索引的可能性就越大,因为这些脚本增加了太多权重。

我花了一些时间研究搜索引擎(不是 Google),但从未从 SEO 的角度真正做过很多工作。

无论如何,这里有一些因素,谷歌可以合理地使用这些因素来惩罚应该通过包含大块内联 JavaScript 来增加的页面。

  • 整体页面大小。
  • 页面下载时间(页面大小和下载速度的组合)。
  • 搜索词在页面中出现的时间有多早(可能会忽略脚本标记,但这需要更多的处理)。

带有大量内联 JavaScript 的脚本标签本身可能会被解释为不好的。如果用户经常从网站加载大量页面,如果脚本位于单个共享文件中,他们会发现加载速度要快得多。

我同意所有其他评论,但要补充一点,当一个页面不仅仅是 <p> 围绕内容,你相信谷歌能够正确解释标记,但这始终是一件有风险的事情。内容为王,如果谷歌不能完美地阅读内容,那么这只是谷歌不向你展示爱的另一个原因。

这是一个老问题,但仍然非常相关!

根据我的经验,如果脚本标签导致您的网站加载缓慢,那么它们就是不好的。网站速度实际上确实会影响您在 SERP 中的外观,但脚本标签本身并不一定对 SEO 不利。

SEO中的很多活动并不是搜索引擎推荐的。您可以使用 <script> 标记但不过分。甚至 Google Analytics 中的代码片段 <script> 标签。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top