[英]How to localise html5 meta tag information
我正在构建一个为 4 种不同语言设计的网站,使用Sinatra
并使用I18n
库插入本地化内容,但我想知道如何处理description
和keywords
等标准HTML5
元标记,以及 Google 和其他搜索的方式如果我本地化这些标签中的内容,引擎会处理它们。
理想情况下,我希望能够通过sitemap.xml
文件或其他文件中的信息(尽管我不确定这是否可能)告诉 Google(等),该站点可能会以这 4 种语言进行解析,因此根据用户的语言环境偏好向用户呈现正确本地化的关键字和描述。
同样,我希望能够通过本地化相关的og
元标签和 twitter:card` 元标签来本地化发送到 Twitter 和 Facebook 的信息。
注意:无论选择何种语言,实际页面 URL 都将相同,本地化内容在Slim
模板本身中呈现。
例如,是否足以指定
html lang='de_DE'
我正在采用最佳实践和 DRY 方式为我的国际用户实现很好的本地化搜索结果摘要信息。
如果不同的语言版本位于同一个 URL,那么搜索引擎得到的是您的服务器发送到浏览器的内容,该浏览器指定了任何语言首选项。 根据您的描述,他们似乎总是获得默认(英文)版本。 没有meta
标记或lang
属性可以影响这一点。 (搜索引擎会忽略lang
属性。)
所以你应该安排一些事情,以便页面的每个语言版本都有一个自己的 URL。 (区别可能仅在查询部分,例如末尾的?lang=de-DE
。)此外,版本应该相互链接,带有link
元素或带有可见a
链接,以便当搜索引擎找到一个版本时,它也可以通过以下链接找到其他版本。
PS 编写<meta name=keywords ...>
标签可能是浪费时间。 谷歌很久以前就忽略了它们。
您可以使用lang
属性为同一 HTML 文档中的meta
元素提供不同语言的内容:
<meta name="description" lang="de" content="…" />
<meta name="description" lang="en" content="…" />
<meta name="description" lang="es" content="…" />
<meta name="description" lang="fr" content="…" />
如果谷歌或 Facebook 等任何第三方服务认识到这是一个不同的问题,一般无法回答,这取决于具体的服务、上下文和时间点,因为事情可能会迅速变化。
但是(正如Jukka K. Korpela 所指出的那样),通常您应该使用单独的 URL 进行翻译。 为用户(和搜索引擎等)提供链接到特定语言版本的能力。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.