【问题标题】:How does Google handle the indexing of content when History API is involved?涉及 History API 时,Google 如何处理内容索引?
【发布时间】:2016-05-22 08:38:07
【问题描述】:

我说我有一个这样的页面部分(粗略的 HTML 给出一个想法):

www.mydomain.com/contact-us

<div class="regional-offices">

<div class="south-west">
  <a href="#south-west">South West</a>
  <div class="south-west-content">South west office address</div>
</div>

<div class="north-east">
  <a href="#north-east">North East</a>
  <div class="north-east-content">North east office address</div>
</div>
...
...

目前,这些是一组可展开以在单击链接时显示内容的手风琴。我想做的是将它们视为单独的 URL,以便它们可以被 Google 单独索引,当然目前它们只是单个页面的一部分。

我一直在研究 History API,并且可以了解如何为每个部分创建唯一的 URL,但我的理解是,如果 ,Google 或其他搜索引擎将如何处理这些链接所需信息已经是页面的一部分,并且没有存储在其自己的单独 URL 中。

例如,第一步是将&lt;a&gt; 标签更改为:

<a href="/contact-us/north-east">North East</a>

然后我们可以使用 JS 将 preventDefault() 直接转到 URL,而是为用户提供一个展开的手风琴,将页面向下滚动到手风琴和使用 History API 的唯一 URL。如果我们直接访问 URL,或者单击任何链接,这一切都很好。

但问题是,据我所知,Google 爬虫会尝试跟踪链接并遇到 404,因为没有 Javascript 阻止访问 URL 中的资源。我也不希望有。

或者是不是我需要一个唯一的位置来保存手风琴的内容,它是可索引的,并且在与折叠的手风琴交互时也可以使用 AJAX 拉入?

抱歉,如果我没有说清楚。

【问题讨论】:

    标签: seo browser-history history.js html5-history


    【解决方案1】:

    我不得不处理同样的事情。我所做的是制定一个重写规则,以便谷歌关注的链接实际上发布到处理请求的页面。来显示数据。 Angular 可能会在处理手风琴时为您省去很多麻烦。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-01
      • 2018-04-27
      • 1970-01-01
      • 1970-01-01
      • 2014-03-17
      • 2018-04-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多