需要了解 AMP 辩论?

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您的旅程的每个阶段提供云产品。 立即开始使用 200 美元的免费积分!

前几天我在一次聚会上谈到了 AMP 的话题。 它是在“嘿,你们都见过这个东西吗?” 的语境下提出来的。 有些人听说过它,有些则没有。 即使是在那些听说过它的人中,普遍的反应也是:“这是一项新技术。 可能是未来。 我想我得学习它,但我还没来得及。” 这很正常。 这就像听到关于正在流行的某个新的 JavaScript 框架一样。 “显然,它很重要,但我还没开始使用它。 也许有一天,当一个项目需要它的时候,我会开始学习。”

聚会上的其他一些人则说,“它不是那个让你无法使用 CSS 或 JavaScript 的东西吗?” 另一个人认为它更像一个 CMS。 两者都不完全正确,但外界确实存在着很多困惑(以及很多耸肩)。 我们在这里就不再解释 AMP 是什么了,而是讨论一些可能令人困惑和有争议的观点。

这是 Google 的东西吗? 还是…?

网站没有特别明确地说明这一点。 从技术上讲,它是一个开源项目,有各种贡献者和合作伙伴,但……它是 Google 的东西。 Google 的员工正在开发它。 Google 举办了最近的会议。 Google 在所有 AMP 页面顶部托管所需的 JavaScript 文件。 Google 托管的缓存构成了 AMP“本质”的 1/3。 AMP 的核心在于让 Google 在备受关注的 SERP 轮播图中展示您的 AMP 页面。

以下是对这三个部分的简洁解释,来自 Jeremy Keith,包括有争议的部分

  1. AMP 格式。 一组 Web 组件。 例如,在 AMP 页面上,您使用的是 amp-img 元素,而不是 img 元素。
  2. AMP 规则。 在 Google 服务器上托管了一个 JavaScript 文件,它将这些 Web 组件从 span 转换为工作元素。 不允许使用其他 JavaScript。 所有样式都必须放在 style 元素中,而不是外部文件中,并且对您使用这些样式的操作有所限制。
  3. AMP 缓存。 这是大多数困惑(甚至彻头彻尾的敌意)的来源——当您从 Google 搜索中启动 AMP 结果时,您不会跳转到另一个网站。 相反,您会看到 Google 缓存的页面副本,而不是原始页面。

AMP 网站 并不否认这一点,并且同样明确。

您的网站将变为 https://google.com/yourwebsite.com

无论如何,它在某种程度上是这样的。 除非您执行一些非常不寻常的操作,比如 Paul Bakaus 所做的那样,将整个网站都改为 AMP,否则您最终只能在以下情况下才会访问 AMP 页面:

  1. 在移动设备上
  2. 单击 Google 搜索中的 AMP 结果

当您这样做时,您访问的 URL 将以 https://google.com 开头。 您将其添加为书签,您将其分享,您将其通过电子邮件发送给自己,无论如何,它都是 Google URL。 有点奇怪。 令许多人感到困惑。 有一种方法可以“请求桌面网站”,但不好用。

John Gruber 发现这一点特别奇怪

如果我点击结果,我会看到 Ars 文章的 AMP 版本,该版本由 Google 域提供。 到目前为止,我理解了。 但最关键的是,我没有看到任何方法可以从 Google 提供的 AMP 页面跳转到 Ars 网站上文章的规范版本。 即使我分享这篇文章,分享的内容也是 google.com URL。 在桌面浏览器上,这些 URL 会重定向到 Ars 网站。 但在移动设备上不会。 从一台移动设备分享到另一台移动设备,没有人会离开 google.com。 任何网站为什么要将整个移动用户群(对于当今许多网站来说,这占其总用户群的大部分)交给 Google?

我无法理解。

为什么任何发布者会故意这样做?的角度来看,这毫无意义。

我最初的想法是,这只是另一种发布格式。 就像另一种 RSS 一样。 最近这轮发布格式包括 Facebook Instant Articles、Apple News 和 AMP。 还会出现更多。 我 说过

嘿,你们想怎样就怎样。 只要…

  1. 工作量不要太大
  2. 内容的规范首页是我的网站

我只想让大家阅读并喜欢 CSS-Tricks。 理想情况下,我可以通过 (良好、经过挑选的) 赞助内容来实现盈利,而这些赞助内容也会出现在所有这些频道中。

我仍然认为,在大多数情况下,这是可行的。 策略是:去读者所在的地方,这是合理的。

Gruber 的后续

我无法理解锁定方面。 我为什么要将页面控制权让渡给 Google? AMP 页面确实加载速度很快,但如果发布者希望他们的网页加载速度很快,他们可以将网页设计成快速加载。 我得到的最好的答案是,这并不是真正的战略——发布者之所以选择 AMP,仅仅是因为他们的 SEO 团队告诉他们这样做,因为 Google 在搜索结果中推荐 AMP 页面。 我想这是一种策略,但从长远来看,将内容控制权让渡给 Google 并不是一个好策略。

这种担忧源于对 Google 的不信任。 就我个人而言,我不太担心,但我理解这种担忧。 我对许多 其他事情都感到非常愤怒。

我还想补充一点,与 Apple News 或 Instant Articles 相比,在 URL 前面加上 google.com 并不像失去太多控制权。

这是一项非同小可的技术投资

最初,我以为这很简单,就像 RSS 一样。

是的,这是一种奇怪的新格式,充满了 <amp-img> 等 Web 组件。 但当然,就像 WordPress 网站可以生成 RSS 提要一样,也存在 WordPress 网站的插件可以生成 AMP 版本。 我在网上搜索了一下,发现 Drupal 和 Jekyll 等其他流行的 CMS 也存在插件。 大概 20 秒的技术投资。

但是……如果您只做这些,您会失去很多东西。

所有广告、号召性用语等等都无法同步。 您可以在 AMP 上投放广告,但只能使用 AMP 特定的广告平台。 您很可能需要与全新的合作伙伴合作处理广告。 您最好希望能够获得大量的移动搜索流量,否则,这可能并不值得。 如果您要全面实施发布到任何地方的策略,您可能需要在每个地方都使用全新的广告合作伙伴。 哎呀。

您在页脚中的电子邮件订阅表单? 不见了。 您在文章末尾的小型推荐文章小部件? 不见了。

这不是说这些东西不能在 AMP 中存在,只是您需要完全重新设计它们才能让它们回来,因为不允许使用 JavaScript。 甚至您的品牌、排版等都需要定制工作才能保持一致。

在我看来,使用 AMP 的选择似乎如下:

  • 使用 CMS 插件为您生成 AMP 页面,并让默认值保持默认值。
  • 使用 CMS 插件,但根据自己的需要进行自定义。
  • 构建自己的系统。
  • 使用像 Mercury 这样的神奇工具,或像 Relay Media 这样的付费定制服务。

就我个人而言,虽然我完全可以接受另一种发布格式,并且完全被其速度所吸引,但我并不喜欢这些选择中的任何一个。

AMP 不会告诉你:嘿,也许不要使用它

这里存在一些风险,我认为这就是争议的一部分。 AMP 文档不会列出不使用 AMP 的理由。 他们必须告诉你为什么你应该使用它。

风险在于它比预期的开发量更大。 风险在于您做了很多工作却赔了钱。 风险在于让用户感到困惑。 风险在于 Google 会发生一些奇怪而粗鲁的事情。 范围更广地说,风险在于 AMP 对 Web 弊大于利。

您不需要 AMP 就能获得类似 AMP 的结果。

Tim Kadlec:

Google 缓存值得注意的地方在于它是免费的,但除此之外,它似乎与任何 CDN 为您做的没什么区别。 您可以将网站构建成预渲染和缓存友好的。 您可以限制 JavaScript 的使用。 您可以仔细选择 HTML,并以性能为目标编写 CSS。 您可以自己完成所有这些操作(事实上,您应该完成所有这些操作)。

声称使用网页功能的子集可以提高性能也并没有什么令人兴奋的地方。在任何传统的文章页面上禁用 JavaScript,你可能会看到非常相似的收益。

但是,这就像一块白板。你 *可以* 自己动手做,但你不会。或者至少,人们不会大规模地做。也许在一个 AMP 大获成功的世界里,它会影响“普通”网站朝着清理自己的行为方向发展。

即使是现在,AMP 也可以成为内部团队的完美借口。Jeremy Keith

为庞大臃肿的网页的出版商工作的苦恼的开发者,在被告知在他们的页面中添加另一个糟糕的 JavaScript 跟踪脚本或臃肿的库时,很难与他们的老板争论。但当他们制作 AMP 页面时,他们可以轻松拒绝,指出 AMP 规则不允许这样做。Google 充当我们的坏警察,这是一个非常有价值的角色。 Sarah 指出这一点,她在我们参加的小组讨论中非常正确。

强调一点,AMP 页面并不需要为了性能而存在。

在 AMP 大会上,Natalia 指出,卫报的非 AMP 页面在性能上优于 AMP 页面。

这实际上对网络有利吗?

我强烈建议收听 ShopTalk 248: AMP,我们邀请了 Paul 和 Barb Palsar 参加。

Paul 喜欢 AMP,他绝对是一个支持网络的人,但他承认 AMP 存在着对开放网络不利风险。Barb 是一位企业家,她承认 AMP 存在风险。

Tim Kadlec 对 工具锁定 表示担忧。

为了“触达所有人”,使用非常具体的工具来构建我页面的定制版本,这并不符合我对“开放网络”的任何定义。

但它们应该解耦。提供工具来提高性能。提供一种模型和方法来产生收入流并改善分发。

Paul Irish 在那篇文章中发表了评论。

虽然“工具而非规则”的理念在技术上是正确的,但它在开发者群体中并不容易扩展。对平台上可能性的子集提供明确的约束,当然更容易遵循。

AMP 对网络的一种承诺。Google 也许可以效仿 Instant Pages,并提供一些非网络格式,从而创建一个平行的出版宇宙。但 AMP 被设计为与网络兼容,因为 Google 认为,当内容位于网络上时,它具有最佳价值。

Gina Trapani 也 表示担忧

如果你谈论开放网络,你就是在谈论基于标准和去中心化,以及内容不被赋予特权,对吧?AMP 做到了所有这些。它不是 W3C 标准…… 至少现在还不是。它不是去中心化的,因为至少所有 AMP 页面都托管在 Google 的缓存中。因此,如果你在 Twitter 上搜索 google.com/amp,你会发现很多结果,人们正在分享那个 URL,所以它不是去中心化的…… AMP 内容在搜索结果中具有特权,这让我感到担忧。

正是这种特权激励了 AMP 的使用。对我来说绝对是如此。

根据我的经验,人们使用 AMP 的动机是……我从我们的客户那里看到了这一点……主要是由于 SEO。他们希望它出现在“热门故事”轮播中,他们希望在常规搜索结果中获得那个闪电状的认可,现在这种情况正在发生。这让我感到担忧。我宁愿他们关心的是性能和更好的用户体验,而不是 SEO 和搜索排名。如果没有这个因素,有多少出版商会使用 AMP?会更少。


无论如何,这很复杂。

对我来说,如果……感觉会更好。

  • 创建真正好的 AMP 页面的工具变得更加出色和容易。
  • 不仅仅是 Google 使用这种格式来做一些很酷的事情。
  • 它从来没有被任何机构用作搜索排名因素(或任何可以被解释为搜索排名因素的东西)。
  • 它成为了 W3C 标准。
  • 广告生态系统变得非常乐于追随你的内容,无论它在哪里。

但我的想法正在不断发展,就像每个人的想法一样。