当前位置: 首页 > news >正文

关于 Google AMP 和 SEO

Google 于 2015 年首次推出 AMP,即加速移动页面。借助开源 AMP 框架,网页设计师可以制作快速加载的移动网页。该框架的创建是为了应对使用移动设备访问互联网的个人数量的增加。从那时起,谷歌一直在推动使用 AMP 来增强移动设备上的 SEO 和用户体验。我们将在这篇文章中更详细地研究 AMP,并讨论它如何影响 SEO。

什么是 Google AMP?


如前所述,AMP 是一个开源框架,允许开发人员创建快速加载的移动页面。AMP 使用 HTML、CSS 和 JavaScript 的精简版本来显著缩短网页加载时间。AMP 还会在 Google 的服务器上缓存网页,让用户点击网页时几乎可以立即加载网页。使用 AMP 的网页会显示在移动设备搜索结果顶部的轮播界面中,从而让用户更容易看到这些网页。

为什么谷歌要推送 AMP?

出于多种原因,Google 一直在推动 AMP 的采用。首先,AMP 改善了移动设备上的用户体验。使用 AMP 的网页加载速度更快,从而可以更轻松地快速访问所需的内容。更快的加载时间也会降低跳出率,这是谷歌的一个重要排名因素。其次,谷歌将AMP视为一种将用户留在网络上而不是在应用程序内的方式。最后,谷歌希望通过提供卓越的移动体验来保持领先于竞争对手。

AMP 如何影响 SEO?

AMP 对 SEO 有重大影响。使用 AMP 的网页会受到 Google 的优惠待遇。启用了 AMP 的网页更有可能在移动设备上的搜索结果中排名第一。如前所述,AMP 网页会显示在搜索结果顶部的轮播界面中。轮播界面中显示的网页比未界面界面中显示的网页获得的点击次数更多。

AMP对SEO的影响不仅限于移动设备。谷歌表示,AMP也是桌面搜索结果的一个排名因素。

如何在您的网站上实施 AMP

在您的网站上实施 AMP 非常简单。第一步是创建网页的 AMP 版本。您可以手动创建网页的 AMP 版本,也可以使用插件或扩展程序自动创建 AMP 版本。

创建网页的 AMP 版本后,您需要添加一些代码,告知 Google 在哪里可以找到 AMP 版本。为此,您可以在 HTML 代码的 head 部分添加 rel=“amphtml” 标记。此代码会告知 Google 在何处可以找到您网页的 AMP 版本。

为确保您的 AMP 网页符合 AMP 规范,您必须对其进行验证。您可以使用 AMP 验证工具(Google 提供的一种工具)来验证您的 AMP 网页。AMP 验证工具会检查您的网页是否存在错误,并提供有关如何修正这些错误的建议。

AMP 最佳实践

在您的网站上实施加速移动页面 (AMP) 时,您应该遵循一些最佳实践,以确保您的网页表现良好并提供良好的用户体验。以下是一些顶级 AMP 最佳做法。

  • 使用AMP缓存 - AMP缓存是一个内容分发网络,可将您的AMP页面缓存在Google的服务器上。使用 AMP 缓存可以显著提高 AMP 网页的性能。当用户点击指向您的 AMP 网页的链接时,AMP 缓存会提供缓存中的网页,从而加快加载过程。以下代码必须包含在 HTML 代码的头部才能使用 AMP 缓存:
<link rel="canonical" href="https://www.example.com/amp/page.html">
<link rel="amphtml" href="https://www.example.com/amp/page.html">

第一行代码告诉 Google 您网页的 AMP 版本是规范的,第二行代码告诉 Google 在哪里可以找到您网页的 AMP 版本。

  • 优化图像 - 图像可能是页面加载时间的重要来源。确保优化图像的大小和格式。使用图像压缩工具在不牺牲质量的情况下减小图像的文件大小。为每个图像使用正确的图像格式。例如,将 JPEG 用于照片,将 PNG 用于具有透明度的图像。
  • 使用 AMP Analytics - Google 提供 AMP Analytics,这是一项可让您监控 AMP 网站上用户活动的服务。使用 AMP 分析可以帮助您确定需要改进的领域,并优化网页以提高性能。以下代码必须包含在 HTML 代码的头部才能使用 AMP Analytics :
<script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script>

您还需要将以下代码添加到HTML代码的正文部分:

<amp-analytics type="googleanalytics" id="analytics1">
<script type="application/json"> 
{"vars": {"account": "UA-XXXXXX-Y"},"triggers": {"trackPageview": {"on": "visible","request": "pageview"}}
}
</script>
</amp-analytics>

将“UA-XXXXXX-Y”替换为您的 Google Analytics(分析)跟踪 ID。

  • 避免使用外部资源 - 外部资源(如 JavaScript 和 CSS 文件)可能会降低 AMP 网页的速度。请尽可能避免在 AMP 网页上使用外部资源。请改用 AMP 组件库,该库提供了可用于构建网页的预构建组件。如果需要外部资源,请使用异步加载来减少对页面加载时间的影响。
  • 使用结构化数据 - 使用结构化数据可以提高网页在搜索结果中的可见度。AMP 网页支持结构化数据,因此请将其添加到您的网页中。使用 AMP 版本的结构化数据标记,以确保与 AMP 兼容。您可以使用 Google 提供的结构化数据测试工具测试结构化数据。
  • 测试您的网页 - 在发布 AMP 网页之前,请对其进行全面测试。使用 AMP 验证工具和移动设备适合性测试等工具,确保您的网页符合 AMP 规范并提供良好的用户体验。AMP 验证工具会检查您的网页是否存在错误,并提供有关如何修正这些错误的建议。移动设备适合性测试会检查您的网页是否适合移动设备,并提供如何改进它们的建议。

通过遵循这些 AMP 最佳做法,您可以确保您的网页提供针对移动设备进行优化的快速加载、用户友好的体验。这有助于提高您网站的搜索引擎排名并增加用户参与度。

  • 使用正确的 HTML 语法 − 确保在创建 AMP 网页时使用正确的 HTML 语法。AMP 网页需要严格的 HTML 语法,因此错误可能会导致您的网页无法通过验证。使用 AMP HTML 样板代码确保您的网页使用正确的语法。
  • 使用 AMP 组件 - AMP 组件是预构建的 HTML 和 JavaScript 模块,可为您的 AMP 网页提供大量功能。这些组件针对 AMP 进行了优化,因此它们很轻巧,不会导致任何页面速度问题。一些常用的 AMP 组件包括 amp-img、amp-carousel 和 amp-video 组件。
  • 使用内联 CSS - 内联 CSS 有助于减少 AMP 网页上加载的外部资源数量。您可以通过将 CSS 代码直接包含在 HTML 文档中来避免需要外部 CSS 文件。但是,请尽可能减少 CSS 代码,以避免任何潜在的性能问题。
  • 使用正确的广告格式 - 如果您打算通过广告通过 AMP 网页获利,请使用与 AMP 兼容的广告格式。Google AdSense 是 AMP 网站最受欢迎的广告网络之一,因为它提供了多种适合 AMP 的广告类型。

请遵循 AMP 广告指南,确保您的广告不会对用户体验产生负面影响。

结论

总之,AMP 是一个强大的工具,可以提高移动页面的性能并提升您的 SEO。通过遵循 AMP 的最佳做法,您可以确保您的网页提供针对移动设备优化的快速、用户友好的体验。AMP 可以帮助您提高网站在搜索结果中的可见度,并提高用户参与度。如果您尚未实施 AMP,请考虑在您的网站上实施 AMP。

如果感觉这篇文章还不错的话可以点赞收藏,对这个还有疑问可以评论回复解答的哈,需要seo学习资料或者相关的面试题可以通过文末免费获取

相关文章:

关于 Google AMP 和 SEO

Google 于 2015 年首次推出 AMP&#xff0c;即加速移动页面。借助开源 AMP 框架&#xff0c;网页设计师可以制作快速加载的移动网页。该框架的创建是为了应对使用移动设备访问互联网的个人数量的增加。从那时起&#xff0c;谷歌一直在推动使用 AMP 来增强移动设备上的 SEO 和用…...

【SpringMVC】 对请求的不同响应

前言 本文学习如何运用不同的注解来返回不同的响应. 1.返回静态页面Controller 返回index.html页面 Controller 和 RestController的区别 controller 只有加上这个注解,Spring才会帮我们管理这个代码.后续我们访问时才能访问到. RestController 等同于 Controller ResponseBo…...

SQL进阶学习

1.[NISACTF 2022]join-us sql报错注入和联合注入 过滤&#xff1a; as IF rand() LEFT by updatesubstring handler union floor benchmark COLUMN UPDATE & sys.schema_auto_increment_columns && 11 database case AND right CAST FLOOR left updatexml DATABA…...

邦芒解析:做好职场规划防止跳槽失败

为了防止跳槽进入不适合自己的工作环境&#xff0c;你可以采取以下措施&#xff1a; 1、做好调研&#xff1a;在决定跳槽之前&#xff0c;尽可能了解新公司的情况。这包括公司的文化、工作氛围、发展前景以及团队成员之间的关系等。通过搜索公司网站、阅读员工评价以及与公司内…...

基于springboot实现实习管理系统的设计与实现项目【项目源码+论文说明】计算机毕业设计

基于sprinmgboot实现实习管理系统的设计与实现演示 摘要 随着信息化时代的到来&#xff0c;管理系统都趋向于智能化、系统化&#xff0c;实习管理也不例外&#xff0c;但目前国内仍都使用人工管理&#xff0c;市场规模越来越大&#xff0c;同时信息量也越来越庞大&#xff0c;…...

【华为OD题库-031】比赛的冠亚季军-java

题目 有N(3<N<10000)个运动员&#xff0c;他们的id为0到N-1,他们的实力由一组整数表示。他们之间进行比赛&#xff0c;需要决出冠亚军。比赛的规则是0号和1号比赛&#xff0c;2号和3号比赛&#xff0c;以此类推&#xff0c;每一轮&#xff0c;相邻的运动员进行比赛&#…...

电脑如何禁止截屏

禁止电脑截屏是一项重要的安全措施&#xff0c;可以保护用户隐私和防止恶意软件的使用。以下是几种禁止电脑截屏的方法&#xff1a; 形式一&#xff1a; 一刀切&#xff0c;全部禁止截屏 可以在域之盾软件后&#xff0c;点击桌面管理&#xff0c;然后选择禁止截屏。就能禁止所…...

【Web】NewStarCTF Week1 个人复现

目录 ①泄露的秘密 ②Begin of Upload ③Begin of HTTP ④ErrorFlask ⑤Begin of PHP ⑥R!C!E! ⑦EasyLogin ①泄露的秘密 盲猜/robots.txt,访问得到flag前半部分 第二个没试出来&#xff0c;老老实实拿dirsearch扫吧 访问/www.zip 下载附件&#xff0c;拿到第二部分…...

Android 提示框代码 java语言

在Android中&#xff0c;你可以使用 AlertDialog 类来创建提示框。以下是一个简单的Java代码示例&#xff0c;演示如何创建和显示一个基本的提示框&#xff1a; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; im…...

【c语言】二维数组的对角线对称交换

c语言&#xff0c;假设已经有了一个二维数组&#xff0c;对其进行对角线对称变换&#xff0c;如&#xff08;0&#xff0c;1&#xff09;与&#xff08;1&#xff0c;0&#xff09;变换&#xff0c;并打印。 示例 #include <stdio.h>void swap(int *a, int *b) {int te…...

Sulfo-CY3 NHS荧光染料的制备和表征

Sulfo-CY3 NHS(源自星戈瑞的花菁染料)荧光染料的制备和表征是确保染料质量和性能的关键步骤。制备Sulfo-CY3 NHS荧光染料&#xff1a; 原材料准备&#xff1a;准备所需的原材料&#xff0c;包括CY3 NHS ester&#xff08;或等效的前体&#xff09;&#xff0c;用于制备Sulfo-C…...

数字乡村:科技赋能农村产业升级

数字乡村&#xff1a;科技赋能农村产业升级 数字乡村是指通过信息技术和数字化手段&#xff0c;推动农业现代化、农村经济发展和农民增收的一种新模式。近年来&#xff0c;随着互联网技术的飞速发展&#xff0c;数字乡村开始在全国范围内迅速兴起&#xff0c;为乡村经济注入了新…...

K8S部署mongodb-sharded-cluster(7.0.2)副本分片

添加源 helm repo add bitnami https://charts.bitnami.com/bitnami指定版本拉取 helm pull --repo https://charts.bitnami.com/bitnami mongodb-sharded --version 7.0.5安装时选择SCRAM-SHA-1默认是SCRAM-SHA-256 helm install -n prod mymongodb mongodb-sharded --value…...

Dockerfile-CentOS7.9+Python3.11.2

本文为CentOS7.9下安装Python3.11.2环境的Dockerfile # CentOS with Python3.11.2 # Author xxmail.com# build a new image with basic centos FROM centos:centos7.9.2009 # who is the author MAINTAINER xxmail.comRUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/…...

自定义责任链Filter实现

核心接口 Filter package com.xxx.arch.mw.nbp.common.extension;import com.xxx.commons.data.domain.Result;/*** date 2023/08/25*/ public interface Filter {Result invoke(final Invoker invoker, final Invocation invocation); } Invoker package com.xxx.arch.mw.…...

NX二次开发UF_CSYS_create_matrix 函数介绍

文章作者&#xff1a;里海 来源网站&#xff1a;https://blog.csdn.net/WangPaiFeiXingYuan UF_CSYS_create_matrix Defined in: uf_csys.h int UF_CSYS_create_matrix(const double matrix_values [ 9 ] , tag_t * matrix_id ) overview 概述 Creates a 3 x 3 matrix. 创建…...

css引入的三种方式

css引入的三种方式 一、内联样式二、外部样式表三、 内部样式表总结trouble 一、内联样式 内联样式也被称为行内样式。它是将 CSS 样式直接应用于 HTML 元素的 style 属性中的一种方式 <p style"color: blue; font-size: 16px;">这是一个带有内联样式的段落。&…...

含羞草研究所研究含羞草的代码

点击进入 一个简单的Python代码示例&#xff0c;用于模拟含羞草的行为&#xff1a; class Mimosa: def __init__(self): self.leaves_open True def touch_leaf(self): if self.leaves_open: print("Leaf closes due to touch.") self.leaves_open False else: p…...

常见立体几何图形的体积

文章目录 abstract祖暅原理推论 棱锥和圆锥的体积用积分的方法推导棱台和圆台的体积圆台体积公式 球体的体积球体的表面积 abstract 锥体和球体的体积公式主要通过积分的方法推导 这类公式的推导中学一般不要求,只要会应用公式在高等数学中由合适和方便的工具来推导这些公式而…...

vue3 + vue-router + keep-alive缓存页面

1.vue-router中增加mate.keepAlive和deepth属性 {path: /,name: home,component: HomeView,meta: {// 当前页面要不要缓存keepAlive: false,// 当前页面层级deepth: 1,}},{path: /list,name: list,component: ListView,meta: {// 当前页面要不要缓存keepAlive: true,// 当前页…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容

基于 ​UniApp + WebSocket​实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配​微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...

STM32---外部32.768K晶振(LSE)无法起振问题

晶振是否起振主要就检查两个1、晶振与MCU是否兼容&#xff1b;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容&#xff08;CL&#xff09;与匹配电容&#xff08;CL1、CL2&#xff09;的关系 2. 如何选择 CL1 和 CL…...