我使用jQuery通过json请求从数据库检索内容。然后,它将HTML中的通配符(如%title%)替换为实际内容。这很好用,这样我就可以在数据库中维护多语言文本,但是Googlebot只看到通配符,而不是实际内容。我知道Googlebot可以看到没有javascript的页面,但是有没有办法解决这个问题?谢谢!
您应该在Google上仔细阅读本文档。
它讨论了如何使Googlebot索引:
#hashfragment
简而言之,您正在考虑添加<meta name="fragment" content="!">“步骤3”中讨论的,并通过一次全部回传所有内容来响应 服务器端 的特殊请求,否则您的客户端代码原本应在页面加载后生成。这些特殊请求实际上?_escaped_fragment_=...是URL中带有的请求,指示服务器应将所有最终演示文稿(用我的话)预先烘焙为Googlebot的单个响应。
<meta name="fragment" content="!">
?_escaped_fragment_=...
就是说,由于您需要为此特殊情况输出填充内容,因此在一般情况下最好这样做(避免需要处理Google的_escaped_fragment_请求),也许还有一种方法必要时在页面加载后换出您的标记(例如,通过使用一定的跨度class或id用于识别它们)。
_escaped_fragment_
class
id