【问题标题】:One-page website + AJAX + History.js + googlebot一页网站 + AJAX + History.js + googlebot
【发布时间】:2012-07-07 07:29:14
【问题描述】:

我正在构建一个具有以下结构的滑动单页网站:

<div id="wrapper">

  <div id="ajax_content">
    // AJAX action fires on document ready (jquery) and loads ALL pages in here
    // then I slide to the correct page-panel found via URL
  </div>

  <noscript>
    // Normal rendering of the SINGLE page that was requested by the url
  </noscript>

</div>

我正在使用 History.js,所以我没有 hashbanged URL。几个页面的所有(菜单)链接都只是普通链接,带有data-page 属性,由 JS 提供 return false

我希望谷歌单独索引所有页面。

我面临的问题是,我发现的所有关于 ajaxed 网站的文档都表明 google 需要 hashbangs。 因此,如果我的 href 标签中只有普通 URL,那么 google 不会执行任何 ajax 操作,对吧?

其他问题:Google 会读取&lt;noscript&gt; 标签。但是由于 noscript 的内容与显示给用户的内容不同,谷歌会认为这种方法是伪装的吗?

谷歌声明:

确保您在两个元素中提供相同的内容(例如,在 JavaScript 中提供与 noscript 标记中相同的文本)。在替代元素中包含显着不同的内容可能会导致 Google 对网站采取行动。

您如何看待这种方法?

【问题讨论】:

    标签: html ajax cloaking


    【解决方案1】:

    所以如果我的 href 标签中只有普通的 URL,谷歌就不会做任何 ajax 操作,对吧?

    正确。

    但是由于 noscript 的内容与显示给用户的内容不同,谷歌会认为这种方法是伪装的吗?

    没有。伪装是故意向搜索引擎显示不同的内容,然后向您的用户显示,以操纵搜索结果。使用 &lt;noscript&gt; 这是很好的可用性,因为任何非 JavaScript 用户,包括一些关闭 JavaScript 的人,仍然可以使用您的网站。所以你所做的是一件好事。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-24
      • 2014-02-12
      相关资源
      最近更新 更多