8
章节8
面向搜索引擎的特殊元标签
Meta robot 标签是搜索引擎将始终遵循的指令。添加这些 robots 标签可以使你的网站更容易被索引。
指令和建议之间存在差异。
Meta robots 标签或robots.txt文件是指令,将始终被遵守。Canonical 标签是 Google 可能决定遵守或不遵守的建议。
页面级元标签有很多选项,但以下是与 SEO 相关的常见示例
<meta name="robots" content="noindex,nofollow" />robots 标签可能是你最常见的标签。默认情况下,它的值将为index,follow,因此不需要指定,all也是一个有效的替代版本。
<meta name="robots" content="all" />如上例所示,将 robots 标签设置为noindex,nofollow将向搜索引擎表明:
- noindex:不在搜索结果中显示此页面。省略noindex将表示该页面可以被索引并显示在搜索结果中。在构建网站时,你可能不想索引某些页面。常见用例包括设置页面、内部搜索页面、政策等。
- nofollow:不跟踪此页面上的链接。省略此项将允许机器人抓取并跟踪此页面上的链接。在其他页面上找到的链接可能启用抓取,因此省略nofollow将允许 Google 抓取并跟踪此页面上的链接。在其他页面上找到的链接可能启用抓取,因此如果链接 A出现在页面X和Y中,并且X具有nofollowrobots 标签,而Y没有,则 Google 可能会决定抓取该链接。
注意:你可以在 Google 官方文档中查看完整的指令列表。
Googlebot 标签
<meta name="googlebot" content="noindex,nofollow" />你可能还会偶尔看到googlebot标签。在大多数情况下,你只需要robots标签。googlebot标签是 Google 特有的。如果你想为 Googlebot 设置单独的规则,并为其他搜索机器人设置通用规则,请使用此标签。
如果存在冲突的标签,则应用限制性更强的标签。
你可能会想,既然可以将不想抓取的 URL 添加到robots.txt中,为什么还需要这些标签。元标签使你能够灵活地按需将页面标记为noindex。
例如,如果你对产品页面应用了筛选器,但最终没有结果,则通常会noindex此页面。
通过 robots.txt 文件限制机器人抓取的 URL 永远不会被 Google 抓取,但如果规则是在页面已被索引后添加的,则页面可能仍保持索引状态。确保页面未被索引的最佳方法是使用noindex标签。
注意:Google 可以决定在不抓取页面的情况下对其进行索引。这极其罕见,但当 Google 希望页面满足特定的搜索结果并确信页面包含用户期望的内容时,就会发生这种情况。
Google 标签
nositelinkssearchbox
<meta name="google" content="nositelinkssearchbox" />当用户搜索你的网站时,Google 搜索结果有时会显示特定于你网站的搜索框,以及指向你网站的其他直接链接。此标签告诉 Google 不要显示网站链接搜索框。
notranslate
<meta name="google" content="notranslate" />当 Google 识别出网站内容并非用户可能想阅读的语言时,Google 通常会在搜索结果中提供翻译链接。
一般来说,这使你有机会向更多的用户群体提供你独特的引人入胜的内容。但是,在某些情况下可能不希望这样做。此元标签告诉 Google 你不希望他们为该页面提供翻译。
示例
现在我们已经介绍了你可能会遇到的一些常见标签,下面是一个页面使用其中一些标签的示例:
import Head from 'next/head';
 
function IndexPage() {
  return (
    <div>
      <Head>
        <title>Meta Tag Example</title>
        <meta name="google" content="nositelinkssearchbox" key="sitelinks" />
        <meta name="google" content="notranslate" key="notranslate" />
      </Head>
      <p>Here we show some meta tags off!</p>
    </div>
  );
}
 
export default IndexPage;如示例所示,我们正在使用 next/head,这是一个内置组件,用于将元素附加到页面head中。为避免head中出现重复标签,你可以使用key属性,这将确保标签只渲染一次。
这有帮助吗?