在javascript密集的应用程序中实现SEO友好性的策略的一个很好的例子是什么
What is a good example of a strategy for achieving SEO-friendliness in a javascript-heavy application?
简介
我知道以前有人问过这个问题,但我发现的问题要么是具体的,要么是一般的,以激发我想要的答案。我能想到的最好的答案是一个使用主干和尽可能少的服务器端逻辑的例子(没有首选的语言/框架)。
问题
我正在计划一个javascript/ajax重(主干+主要是json后端)的应用程序,它实现了一个faceted搜索。以一个简单的鞋店应用程序为例,它可以过滤鞋子的颜色、品牌和类型,并根据价格和尺码或其他任何东西进行排序。
假设我在客户端上使用主干网或类似的框架,并将json服务作为后端。
什么是一个好的(努力和结果之间的权衡)策略来实现seo友好性和快速界面?
资源
我注意到的一个解决方案是Hijax,它在服务器端重用客户端模板,如下所述:http://duganchen.ca/single-page-web-app-architecture-done-right
我消化的资源没有最终结论
- http://code.google.com/intl/de-DE/web/ajaxcrawling/
- https://stackoverflow.com/a/6194427/818846
- http://www.quora.com/Search-Engine-Optimization-SEO/If-I-have-data-that-loads-using-json-JavaScript-will-it-get-indexed-by-Google?q=seo+javascript
SEO友好性的一般要点:它应该在没有JavaScript的情况下工作。
它也有利于可访问性,所以你应该这样做,如果用户没有启用JavaScript(就像搜索引擎一样),它就会工作。
如果他启用了JavaScript(就像任何理智的人一样),它将与你添加的所有漂亮的JavaScript功能配合使用。
作为一个通用的可用性经验法则:如果它能工作,它也应该在没有JavaScript的情况下工作
第一个链接的解决方案听起来不错。单页应用程序的主要问题是,您必须在后端和前端两侧呈现模板。使用Mustache或谷歌闭包模板将是很好的解决方案。
与google+使用的解决方案相同,最初将在服务器上呈现侧面,然后加载一个静态html页面,之后将在客户端呈现页面,但使用与服务器上相同的模板。
还请记住,搜索引擎关注链接的频率远远高于完成表单的频率。
使爬网程序能够看到你的数据库内容的问题被称为"暗网"、"不可见的网络"、"深层网络"或"隐藏的网络"。博客文章
那么你的问题陈述:
一个简单的鞋店应用程序的小搜索,可以过滤鞋子的颜色、品牌和类型,并根据价格和尺码或其他任何东西进行排序。
我建议您除了通过带有选择字段的表单进行搜索外,还包括通过链接层次结构进行搜索。
例如,在二级菜单上,将所有不同的品牌作为单独的链接。然后,每个链接都应该指向该品牌销售的产品列表。诀窍是把事情安排好,这样单个鞋子的链接会带你回到第一个页面(丰富的单页应用程序),但会显示特定的鞋子。——页面应该实现您在OP.
- html5:一个很好的加载方法
- Javascript是一个很好的日期选择器和时间选择器库
- 这是一个很好的例子,显示了 JavaScript 中的 OOP 和过程编程之间的区别
- 一个很好的JS库,用于容纳电气原理图
- 立即调用角控制器内部的函数,这是一个很好的实践
- 一个很好的方法来抵消所有绘制到画布上的0.5像素
- 一个很好的文本到语音转换JavaScript库
- 这是闭包的一个很好的例子吗?
- 将异步 API 转换为同步 API.(我保证有一个很好的理由)
- 同时分配和检查并有一个很好的语法错误
- 在 Object.prototype 上为 NodeList 对象实现数组方法是否是一个很好的实践?
- 什么'这是一个很好的webrtc音频解决方案
- 在实时评论系统中,有一个不变的排序是一个很好的实践
- 这是一个很好的方法,可以查看是否从内容可编辑的DOM中删除了某些内容
- 它是一个很好的私人数据传输和保护解决方案吗
- 这是一个很好的方式来建立一个插件
- 在javascript密集的应用程序中实现SEO友好性的策略的一个很好的例子是什么
- 有一个很好的线形图API在那里与我的规格
- 一个很好的Javascript内置对象参考
- 是想控制我的动画的FPS一个很好的理由继续使用setTimeout而不是requestAnimationFrame