改变rel =' next'和rel =' prev'具有ajax分页的href值用于SEO的好处

时间:2014-03-28 17:34:24

标签: jquery ajax pagination seo

我有一个内置基于ajax分页的页面。分页是为了评论'页面中的功能。根据谷歌的网站管理员博客,有rel =" next"和rel =" prev"价值观有利于SEO。

我在头部添加了以下标记:

<link id="PrevHeadLink" rel="prev", href="someurl?page=1"></link>
<link id="NextHeadLink" rel="next", href="someurl?page=3"></link>

我有一个客户端脚本,在分页成功时运行:

function AjaxPaginationSuccess(newNextValue, newPrevValue) {
  $('#NextHeadLink').attr('href', newNextValue);
  $('#PrevHeadLink').attr('href', newPrevValue);
  /*Do other stuff*/
}

点击进入其他页面后,当我使用Chrome开发者工具查看来源时,更改会反映在链接的href值中。但是,如果我只是执行常规视图页面源,则更改不会反映在href值中,并且链接似乎具有与页面更改事件之前相同的旧值。搜索机器人可以检测到这些变化吗?

附加信息:不确定此信息是否有帮助,但我使用history.pushState尝试实现SEO友好的AJAX分页。我的网站运行在NodeJs,CoffeeScript和Jade堆栈上。我使用jQuery进行客户端脚本编写。我没有遇到与我的其他分页内容的rel链接相同的问题,因为我在Ajax请求成功时将新的Jade模板加载到分页div中。像这样:

success: function(html) {
        $('#PaginationModule').html(html);
        AjaxPaginationSuccess(newNextValue, newPrevValue);
      }

谢谢!如果我能为您提供任何其他信息以帮助解决此问题,请与我们联系。

1 个答案:

答案 0 :(得分:1)

我不知道搜索机器人是否支持像pushState这样的html5功能,特别是在大多数情况下,他们都没有执行javascript。

如果您可以使用网址someurl?page=[PageId]加载每个网页,并且prevnext链接重定向到someurl?page=[PageId-1]和someurl?page = [PageId + 1],你应该没事。

其他方面,如果浏览器不支持ajax或html5,您的分页链接应该将href属性重定向到someurl?page=[CorrespondingPageId]