AMP的8.3分支与早期版本有一些显着差异。您可以在路线图中看到一些计划,但这里列出了一些主要变化。
Schema.org JSON-LD
AMP要求在AMP页面的头部呈现有效的Schema.org JSON-LD。该元数据也在非AMP页面中使用且有用。Schema.org包含大量可能的对象和参数。最初的AMP模块只提供了几个简单的Schema.org参数,并且无法扩展以包含所有这些参数。所述Schema.org元标记模块被设计成容纳Schema.org元数据的爆炸列表。我们现在假设您将使用该模块来配置AMP所需的JSON-LD。
CSS渲染和工具
AMP要求所有css在页面的头部内联呈现。Drupal默认链接或导入css。8.3分支有一个服务装饰器,按摩所有Drupal的css以最小化它并按照AMP的要求将其呈现为内联。这意味着AMP主题通常以与任何其他主题相同的方式处理css。
AMP还要求内联css不大于50KB。8.3分支为该过程提供了一些帮助。将'&debug#development = 1'添加到任何AMP网址,您将看到系统创建的内联css大小的摘要,以及聚合到其中的所有css文件及其大小的列表。
AMP Javascript
自该模块首次开发以来,已经创建了许多新的AMP javascript库。由于AMP将javascript列入白名单,因此所有这些都必须包含在AMP库文件中,否则将不允许使用。此文件已扩展为包含所有新库和组件。
早期版本的AMP删除了挂钩中所有库的大小,有时会删除不需要删除的内容。新主题使用主题系统中的库覆盖单独删除库。
AMP组件
AMP组件列表已大大扩展。大多数都以块或字段格式化器的形式提供。这些块和格式化程序完全可以自我依赖,实际上可以在任何地方使用,甚至可以在非AMP页面上使用,以实现AMP和非AMP页面显示之间的一致性。他们每个人都使用Drupal的标准主题系统添加自己的javascript作为附件。
评论