谷歌的约翰·穆勒(John Mueller)和马丁·斯普利特(Martin Splitt)合作制作了另一版“问谷歌网站管理员”视频系列,以回答有关JavaScript SEO的问题。
他们一起轮流回答了一系列相当技术性的问题,每个人都添加了自己的独特见解。
这是每个问题和答案的快速回顾。
问题1:如何处理旧资产?
“使用Rails Asset Pipeline缓存时,我们给旧资产什么状态代码? Googlebot抓取了我们目前已404处理的这些过时的资产。 我们会改为410还是将旧资产保留几个月?”
通常,应保留旧资产,直到不再对其进行爬网为止。 最终,Google将重新抓取HTML内容并获取新资产。
如果您使用404旧资产,则可能会导致渲染损坏,这是应该避免的事情。
问题2:不相关的元素
“在预渲染中,我们可以替换或跳过不相关的元素吗? 就是由JS生成的svg条形图?”
所有内容都应包含在预渲染中,或者至少包含尽可能多的元素,以便Googlebot可以看到全部内容。
问题3:重写标题标签
“如果您的网站具有聊天功能,该功能重写了用于通知访问者的通知的标题标签,那么您或应用程序提供商如何阻止Google为标题标签的JS重写版本编制索引?”
简而言之,您不能阻止Google索引由JavaScript动态重写的标题标签。
在这种特定情况下,您可以通过在用户交互之后延迟聊天来解决问题。 这样就可以使用户不得不在打开并更改标题标签之前单击聊天按钮。 由于Googlebot不与任何东西交互,因此它将永远不会看到重写的标题标签。
问题4:JavaScript在渲染输出中的显示
“在预渲染中:JS仍可以在其中吗? 会产生少量内容布局更改的JS,但不会生成AJAX请求。”
是的,在进行预渲染时,仍可以在渲染的输出中使用JavaScript。 从用户体验的角度来看,这样做很有意义,因此无需从预渲染的页面中删除JS。
问题5:预渲染或动态渲染会消失吗?
“预渲染或动态渲染会消失吗?”
动态渲染最终可能会消失,因为它更多的是一种解决方法,有望不再需要更长的时间。
另一方面,从长远来看,服务器端渲染和预渲染更加有用,因为它们允许用户(和搜寻器)更快地接收内容。
观看下面的完整视频: