当前位置: 首页 SEO优化技巧 正文

JS脚本与SEO优化有什么关系

济南SEO博客 |
549

有个读者在问答板块问了一个纯技术问题,关于网站JavaScript的使用和SEO注意事项。JS的SEO是近几年越来越重要的问题,以前小编还没写过这方面的文章。无论是异步调用内容还是添加页面交互,网站都很难避免使用JS脚本。但JavaScript使用不当的话可能会对SEO造成非常大的影响。

这位读者的问题是:“一个企业网站,源码都封装在js里面,直接通过调用js来展示,这可咋搞?”

这是一个比较极端的情况,最后再回答。先说一下一般情况下,页面使用JS时要考虑的SEO问题。

搜索引擎怎样处理JS

首先,简单一句话,JS造成SEO问题的症结在于,搜索引擎不一定执行JS脚本。

做SEO的都知道,要有一个搜索数据流量,搜索相关引擎蜘蛛需要我们顺利进行爬行链接,抓取信息页面,解析并索引管理页面html代码中的内容,然后才谈得上排名和流量。在爬行、抓取、索引等过程中,

如果JS产生障碍,就会导致问题。

浏览器执行JS渲染页面,确保使用用户访问一切正常。但问题在于,搜索引擎蜘蛛爬行页面html代码,如果遇到JS,不一定执行JS脚本,那么需要执行JS才能看到内容,搜索引擎也不一定看到。

Google遇到页面JS时,会在有计算资源、且页面有比较高价值时,尝试执行脚本、渲染页面。百度则基本上不执行JS脚本。所以做中文网站,使用JS上就更要谨慎。

重要链接不要用JS

搜索引擎爬行、抓取信息页面是靠跟踪管理链接的。搜索引擎可能无法跟踪需要JAVASCRIPT脚本调用或解析的重要链接。

不是说链接我们就不能用JS调用,但重要的、想被收录的页面进行至少同时还要有最普通的<a>格式链接可以提供信息抓取入口。例如,您可以使用 javascript 调用相关文章和产品的链接,但是只有当链接在站点的主导航中已经有一个列表页面时才可以。

主导航、菜单系统、列/产品列表,不要使用JS,除非您确定有其他方法提供访问。

想被收录的内容不要用JS调用

页面上的文字内容凡是想被收录的不要用JS调用包括文章正文产品说明产品图片评论等。

JS可以用来调用您不希望被包含的文本,如广告、某些侧边栏内容等。

我见过各种奇怪的javascript调用内容的用法,包括页面标题标签。

慎用懒加载、瀑布流

图片懒加载,甚至文字内容懒加载,是现在网站经常进行使用的方法,在一定影响程度上有利于提高管理页面速度。然而,应该注意的是,当用JS实现延迟加载,是否需要用户交互负载,如点击“更多”链接,或拉下页面,搜索引擎蜘蛛不会做这些动作,不会单击按钮,不会下拉页面,所以可能看不到的延迟加载内容。在此页面或更多其他页面列表上延迟加载更多内容会导致爬行和索引问题。

列表页面使用瀑布流是社交媒体网站的主流方式,用户已经习惯,有的普通网站也学这种方式。同样的,考虑到社交媒体网站经常主动屏蔽搜索引擎,并且不想建立搜索引擎索引,普通网站很可能会被索引,并使用瀑布流来考虑其他搜索引擎可以跟踪链接的门户网站。

注意速度

通常,使用JS会减慢页面的打开速度和响应速度。

通常下载JS文件倒还不算大问题,除非用了几MB的JS文件。一个设计拙劣的 javascript 可以运行几秒钟。浏览器在执行 js 时不能处理其他任何东西,导致脚本阻塞,对于用户来说,它是一个空白页或死页几秒钟,这是非常紧急的。

因此,尝试删除执行时间过长的JS,需要仔细考虑运行超过1-2秒的脚本。尽量合并JS脚本减少 script 数量。

尽量减少JS数量,包括第三方JS。我已经看到许多Web页面需要执行几十个JS脚本,包括许多第三方脚本。问一下自己,这些JS都是必须的吗?你真的要这么做吗? 宁可拖下页面几秒钟,跳出速度也要大大增加用?对于信息性页面,除了显示文章内容外,什么都不需要。对于电子商务网站,除了购物车是不必要的。

除了用户可以体验,页面速度发展也是搜索排名的重要影响因素。

服务器端渲染

如果我们可能存在的话,可以进行考虑JS在服务器端渲染,而不是一个客户端(浏览器)渲染。虽然这会增加技术难度,但服务器的响应也会稍微慢一点,但服务器的性能必须超过用户设备,加上缓存等方法,总的来说会比浏览器执行JS、页面呈现快得多。

怎样检查JS是否造成SEO问题

一些供参考的小方法。

一是通过浏览器禁用JS,看一下访问管理页面时是什么工作情况。如果在禁用JS之后重要内容不可见,则搜索引擎可能无法看到它。不要寄希望于搜索相关引擎会青睐你的网站发展而去进行执行JS。

第二个是检查页面的快照,特别是在纯文本版本中。在许多情况下,搜索引擎快照是搜索引擎索引的页面内容。

如果有些内容必须由JS调用,但你希望搜索引擎对其进行索引,你也可以搜索调用的内容。如果能找到,说明搜索引擎已经执行了JS,对内容进行了索引。我想不出为什么我必须调用JS,但是许多技术人员在使用JS时都非常持久。

最后回到读者的问题上,如果页面源代码封装在 js 里面,直接调用 js 来显示,这样的网站不能做 seo,劝说老板和技术人员改变程序。

声明:原创文章请勿转载,如需转载请注明出处!