Google Search Central (Google搜索支持的结构化数据标记)SEO开发设置

Google会根据结构化数据了解网页上的椰蓉,从而优化SEO排名。搜索引擎优化 (SEO) 是提高网站网页在搜索引擎上的曝光度以吸引更多相关流量的过程。

应用场景

  • 海外独立站
  • 新闻网站
  • 所有需要SEO排名的网站基本都试用
  • 当然众多关于SEO的方法这只是其中一点,合理优化添加Google结构化标记搜索会增加你网站的搜索排名

添加结构化数据前配置准备

关于移动网站和优先将移动版网站编入索引的最佳实践

Google 主要使用通过智能手机代理抓取的移动版网站内容进行索引编制和排名。这称为优先将移动版网站编入索引

注意:如果您的网站pc和wap端是两个路由且两套代码的话,设置移动端优先的话需要在pc端的<head>里面添加 <link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.example.com/">。如果验证结构化数据(智慧型手机)搜索不到时,可以检查一下是否是这段代码指向的移动端链接错误。

创建适合移动端设备的网站

  • 自适应:通过相同的网址提供相同的HTML代码,不考虑所有设备,但可以根据屏幕大小以不同的方式呈现。建议采用自适应设计,因为这是最容易实现和维护的设计模式

  • 动态提供内容:无论用户使用蓝牙设备,都使用相同的网址。配置依赖于user-agent嗅探和Vary: user-agentHTTP这种响应标头来 向不同的设备提供不同版本的HTML。

  • 单独的网址:利用单独的网址指向不同设备,主要区分wap和pc。与动态提供内容相同,这种配置依赖user-agentVaryHTTP 标头将用户重定向到适合设备的相应网站版本。

    // pc端代码示例
    /* 此示例中,桌面版网站网址为https://example.com/。 */
    <link rel="canonical" href="https://example.com/">
    <link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.example.com/">
    <link rel="alternate" hreflang="es" href="https://example.com/es/">
    <link rel="alternate" hreflang="fr" href="https://example.com/fr/">
    <link rel="alternate" hreflang="de" href="https://example.com/de/">
    <link rel="alternate" hreflang="th" href="https://example.com/th/">
    
    // wap端代码示例
    /* 此示例中,移动版网站网址为https://m.example.com/。 */
    <link rel="canonical" href="https://example.com/">
    <link rel="alternate" hreflang="es" href="https://m.example.com/es/">
    <link rel="alternate" hreflang="fr" href="https://m.example.com/fr/">
    <link rel="alternate" hreflang="de" href="https://m.example.com/de/">
    <link rel="alternate" hreflang="th" href="https://m.example.com/th/">
    

确保Google能访问并呈现您的内容

  • 在移动版网站和桌面版网站上使用相同的robots meta标记。 如果您在移动版网站上使用不同的robots meta标记(尤其是noindexnofollow标记),那么您的网站启用“优先将移动版网站编入索引”机制后,Google 可能无法抓取您的网页将其编入索引。
  • 不要依赖用户交互来延迟加载主要内容。Google 不会加载需要用户交互(例如滑动、点击或输入)才能加载的内容。确保 Google 能够看到延迟加载的内容。
  • 允许Google抓取您的资源。某些资源在移动版网站上的网址相反在桌面版网站上的网址。如果您想让Google抓取您的网址,请确保您没有使用规则引人注目相应disallow网址。

确定桌面版网站和移动版网站具有相同的内容

  • 确保移动版网站所含内容与桌面版网站所含内容相同。
  • 在移动版网站上使用与桌面版网站相同的明确且有意义的标题

添加架构化数据

对应官方文档

定义结构化数据的类型

关于结构化数据和JSON-LD
结构化数据提供一种标准化页面信息并对页面内容进行分类的方法。JSON-LD 用于采用简单的面向JavaScript的对象表示法的数据,是Google结构化数据的首选格式。JSON-LD 应该位于页面或页面的 <script>元素内。<head> <body>

提示: JSON-LD区分大小写。确保使用与示例相同的外壳

  • 定义结构化数据的类型,步骤如下:
  1. 在 index.html,创建<script>类型设置为application/ld+json页面中的<head>中的元素。

    <head>
        <script type="application/ls+json">
        </script>
    </head>
    
  2. 在元素内部,通过设置来<script>告诉Google您正在使用schema.org结构化数据。@context``http://schem

    <head>
        <script type="application/ls+json">
        {
            "@context": "http://schema.org/"            // 固定格式
        }
        </script>
    </head>
    
  3. 告诉Google您正在描述什么的类型内容。

    <head>
        <script type="application/ls+json">
        {
            "@context": "http://schema.org/",            // 固定格式
            "@type": "NewsArticle",                      // 根据网站实际情况填写类型,如Product等
        }
        </script>
    </head>
    
  4. 官方示例,根据实际选择自己需要的内容。

    <html>
    <head>
    ...
    <script type="application/ld+json">
      {
      "@context": "http://schema.org/",
      "@type": "Recipe",
      "name": "Party Coffee Cake",
      "image": "https://www.leannebrown.com/wp-content/uploads/2016/12/up-close-pear-cake.jpg",
      "author": {
        "@type": "Person",
        "name": "Mary Stone"
      },
      "datePublished": "2018-03-10",
      "description": "This coffee cake is awesome and perfect for parties."
      ......
    }
    </script>
    </head>
    </html>
    

vue中使用标记

<script>
    methods: {
        creatLdJson(obj, _url) {
          let _metaKeyword = obj.metaKeyword.split(",");
          const jsonLdData = {
            "@context": "http://schema.org",
            "@type": "NewsArticle",
            name: "橙新闻",
            description: obj.description,
            url: _url,
            keywords: _metaKeyword,
            mainEntityOfPage: _url,
            datePublished: obj.releaseDate,
            headline: obj.title,
            image: {
              "@type": "ImageObject",
              url: obj.typeImg,
            },
            author: {
              "@type": "Person",
              name: obj.author,
              url: "https://www.orangenews.hk/",
            },
            publisher: {
              "@type": "Organization",
              name: "橙新聞-OrangeNews.hk",
              url: "https://www.orangenews.hk/",
              logo: {
                "@type": "ImageObject",
                width: 210,
                height: 90,
                url: "https://www.orangenews.hk/static/orange/img/logo.png",
              },
            },
          };
          const script = document.createElement("script");
          script.type = "application/ld+json";
          script.innerText = JSON.stringify(jsonLdData);
          document.head.appendChild(script);
        },
    }
</script>

验证结构化数据

输入您的网址验证,注意切换切换一下检查工具,看看是否都能够搜索到。

请添加图片描述

搜索到说明结构化数据添加成功
请添加图片描述

验证失败错误排查

  1. 错误类型,检查工具选择桌机时可以搜索到,选择智慧手机时搜索不到。可以参考 优先支援手机端策略检查。

  2. 检查数据配置:

    • 确定移动版网站和桌面版网站包含相同的格式化数据。 如果您需要确定应向移动版网站优先添加哪些类型的格式化数据,请从BreadcrumbProduct以及VideoObject格式化开始数据。
    • 在重构数据中使用正确的网址。确保将移动版网站上的重构数据中的网址更新为移动版网址(如有测试环境注意链接是否正确,测试环境是否配置结构化数据)。
    • 如果您使用了数据标注工具,请在移动版网站上训练它。如果您使用数据标注工具提供填写数据,请定期在数据标注工具信息中心检查是否存在填写错误。
  3. 确保网站两个版本的元数据相同

    • 确保在网站的两个版本上使用相同的title元素和元描述。
  4. 网页上noindex标记:导致问题的原因noindex标记禁止将某些移动版本网页编入索引。

    解决问题:在移动版网站和桌面版网站上使用相同的robots meta标记。不要在移动版网页上使用noindex标记(否则,当您的网站启用“优先将移动版网站编入索引”后,Google 无法将您的网页编入索引)。

  5. 其它参考官方文档排错

开发总结

  • 关于Google Search Central 结构化数据标记的文档不是很多,只有参考官网设置,需要认真学习读细。
  • 添加元标记很简单,难点在于添加完后搜索不出来时bug的排查,我们的网站因为pc和wap端是两个网址分开的,再添加完结构化标记后验证结构化数据就始终智慧型手机搜索不到,而使用桌机搜索时可以搜索到。查看了文档和示例代码时没有注意到**移动端优先编入索引**,然后就将wap端的代码加入结构化数据标记并部署。
    然而部署后检查还是搜索不到,就很纳闷。
    直到看到需要在pc端添加指定wap链接的link才反应过来,加上link标签并规范化在两端写好对应的网址,就可以完美的搜索到。
  • 在数据标记的时候尽量简单明了,不要有重复的数据出现,页面没有的信息不要出现。
  • 每个页面的标题尽量不要相同,如果必须相同,那么请将描述(description)区分开,不要一致,否则影响搜索排名。

关于SEO优化很多种,机制越来越智能,传统多塞keyword已经行不得通。欢迎共同学习交流~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/57090.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何用断言帮助检测错误

Java中的断言通过测试我们认为是正确的代码来帮助检测错误。 使用assert关键字进行断言。 其语法为&#xff1a; assert condition; 这里condition是一个布尔表达式&#xff0c;我们假定在程序执行时为真。 启用断言 默认情况下&#xff0c;断言在运行时被禁用并被忽略。…

PHP语言基础知识(超详细)

文章目录 前言第一章 PHP语言学习介绍 1.1 PHP部署安装环境1.2 PHP代码工具选择 第二章 PHP代码基本语法 2.1 PHP函数知识介绍2.2 PHP常量变量介绍 2.2.1 PHP变量知识&#xff1a;2.2.2 PHP常量知识&#xff1a; 2.3 PHP注释信息介绍2.4 PHP数据类型介绍 2.4.1 整形数据类型2.4…

Vault数据备份恢复-MySQL

前言 Vault提供了可靠的功能来保护数据库和其他关键数据。 对于MySQL数据库,Vault提供了一个易于使用的解决方案,可以自动创建和管理定期备份,并支持从备份中快速恢复数据。本文将介绍Vault后端存储MySQL的备份恢复,包括如何设置Vault、如何进行数据备份和还原、如何保护…

day49-Springboot

Springboot 1. Springboot简介 1.1 简介&#xff1a;Springboot来简化Spring应用开发的一个框架&#xff0c;约定大于配置 1.2 优点&#xff1a; 可以快速的构建独立运行的Spring项目&#xff1b; 框架内有Servlet容器&#xff0c;无需依赖外部&#xff0c;所以不需要达成w…

二十三种设计模式第二十四篇--访问者模式(完结撒花)

在访问者模式&#xff08;Visitor Pattern&#xff09;中&#xff0c;我们使用了一个访问者类&#xff0c;它改变了元素类的执行算法。 通过这种方式&#xff0c;元素的执行算法可以随着访问者改变而改变。 这种类型的设计模式属于行为型模式。根据模式&#xff0c;元素对象已接…

如何监控制造业精密空调?看这技能就够了!

在半导体制造、电子元件生产、光学设备制造等领域&#xff0c;精密空调监控是关键的保障&#xff0c;因为微小的温度或湿度变化、微生物或颗粒物污染都可能对产品质量和性能造成巨大影响。 精密空调监控系统作为一种高度智能化的解决方案&#xff0c;能够实时监测和调节生产环境…

SQL注入之sqlmap

SQL注入之sqlmap 6.1 SQL注入之sqlmap安装 sqlmap简介&#xff1a; sqlmap是一个自动化的SQL注入工具&#xff0c;其主要功能是扫描&#xff0c;发现并利用给定的URL的SQL注入漏洞&#xff0c;目前支持的数据库是MS-SQL,MYSQL,ORACLE和POSTGRESQL。SQLMAP采用四种独特的SQL注…

新手入门Jenkins自动化部署入门详细教程

1. 背景 在实际开发中&#xff0c;我们经常要一边开发一边测试&#xff0c;当然这里说的测试并不是程序员对自己代码的单元测试&#xff0c;而是同组程序员将代码提交后&#xff0c;由测试人员测试&#xff1b; 或者前后端分离后&#xff0c;经常会修改接口&#xff0c;然后重新…

【Python】Python 实现猜单词游戏——挑战你的智力和运气!

文章目录 前言学到什么?导入 random 模块定义生命次数定义神秘单词并进行随机选择定义 clue&#xff08;猜测进度&#xff09; 列表&#xff0c;用问号 ? 初始化定义心形符号的 Unicode 编码初始化 guessed_word_correctly 变量定义更新猜测进度函数 update_clue主循环&#…

使用上 Spring 的事件机制

本文主要是简单的讲述了Spring的事件机制&#xff0c;基本概念&#xff0c;讲述了事件机制的三要素事件、事件发布、事件监听器。如何实现一个事件机制&#xff0c;应用的场景&#xff0c;搭配Async注解实现异步的操作等等。希望对大家有所帮助。 Spring的事件机制的基本概念 …

邪恶版ChatGPT来了!

「邪恶版」ChatGPT 出现&#xff1a;每月 60 欧元&#xff0c;毫无道德限制&#xff0c;专为“网络罪犯”而生。 WormGPT 并不是一个人工智能聊天机器人&#xff0c;它的开发目的不是为了有趣地提供无脊椎动物的人工智能帮助&#xff0c;就像专注于猫科动物的CatGPT一样。相反&…

Ansible —— playbook 剧本

Ansible —— playbook 剧本 一、playbook的概述1.playbook简介2.什么是Ansible playbook剧本&#xff1f;3.Ansible playbook剧本的特点4.如何使用Ansible playbook剧本&#xff1f;5.playbooks 本身由以下各部分组成 二、playbook示例1.运行playbook2.定义、引用变量3.指定远…

JAVA 反编译工具

Releases deathmarine/Luyten GitHub 安装exe 打开拖入文件即可

九耶|阁瑞钛伦特:产品经理面试题—产品经理在工作中是如何划分需求优先级的?

产品经理在工作中划分需求优先级是为了指导产品团队的开发和发布流程。以下是产品经理在划分需求优先级时通常考虑的因素&#xff1a; 业务目标&#xff1a;产品经理会与企业领导层或业务方合作&#xff0c;了解公司的战略目标和销售策略。然后&#xff0c;他们会根据这些目标评…

图像 检测 - YOLOv3: An Incremental Improvement (arXiv 2018)

YOLOv3: An Incremental Improvement - 增量改进&#xff08;arXiv 2018&#xff09; 摘要1. 引言2. 处理2.1 边界框预测2.2 类别预测2.3 跨规模预测2.4 特征提取器2.5 训练 3. 我们的做法4. 我们尝试过但没有成功的事情5. 这一切意味着什么References 声明&#xff1a;此翻译仅…

Netty:从ByteBuf中读出数据

介绍 Netty的ByteBuf数据位置索引是0开始的。 可以用ByteBuf的getByte(int index)方法从指定位置读出一字节&#xff0c;这个操作不会改变ByteBuf的readerIndex 或者 writerIndex 的位置。如果index小于0&#xff0c;或者index 1大于ByteBuf的容量&#xff0c;就会抛出IndexO…

下载列表视频的具体操作

主要是介绍怎样获取上篇博客需要的HAR文件和请求域名

Vulnhub靶机DC-2 writeup

靶机介绍 靶机介绍&#xff1a;https : //download.vulnhub.com/dc/DC-2.zip ​ 信息搜集 获取IP地址 扫描靶机的IP的方法 1. nmap -sP 192.168.142.0/24 #nmap进行ping扫描发现存活主机 2. arp-scan -l #基于ARP发现内网存活主机 3. netdiscover -r 192.168.142.0/24 -…

Java导出数据到Excel

Java导出数据到Excel分3步处理 1、构建Workbook 数据 2、设置Workbook 格式 3、导出到Excel 1、构建Workbook 数据 public static void buildData(Workbook wb, List<Person> list) {Sheet sheetName wb.createSheet("sheetName");Row row sheetName.creat…

Java 中的 7 种重试机制

随着互联网的发展项目中的业务功能越来越复杂&#xff0c;有一些基础服务我们不可避免的会去调用一些第三方的接口或者公司内其他项目中提供的服务&#xff0c;但是远程服务的健壮性和网络稳定性都是不可控因素。 在测试阶段可能没有什么异常情况&#xff0c;但上线后可能会出…