- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想使我的网站国际化,以便可以使用多种语言访问它。语言设置将在请求数据中自动检测,并且可以在用户设置中覆盖/存储在 session 中。
我的问题是关于如何根据页面 URL 的语言显示同一页面的不同版本。假设我们正在查看 http://www.example.com/
的索引页,默认为英语。现在,如果讲法语的人加载索引页,我应该将 URL 保持为 http://www.example.com/
,还是应该将其重定向到 http://www.example.com/fr/
?
我想弄清楚这对 SEO 有什么好处或后果。我不希望该网站的法文版显示在 google.com 中,如果它阻止相同页面的英文版显示在那里,但我希望它显示在 google.fr 中。
最佳答案
当您开始将网站本地化为多种语言时,从搜索的角度来看,需要考虑很多事情。通常,您要小心并确保您不会对用户的意图过于聪明。诸如自动检测语言并将它们存储在 cookie 中之类的东西在某些情况下可能很好,但是如果它们成为您的本地化正常工作的要求,那么您可能会遇到搜索引擎(以及真实的人)的一些问题。
对于搜索引擎,您需要确保它们能够以所有不同的语言查找和访问您的所有内容,而无需 POST 请求(无下拉表单)、javascript、flash 或 cookie。因为搜索引擎一般不使用这些技术。
事实证明,这通常对真实客户也有好处。如果你依靠浏览器设置或 ip 检测,那么一些借用 friend 电脑或在国外旅行的真实客户可能会卡在错误的语言中(Microsoft Bing 实际上有一段时间有这个问题)。
这里有一些要牢记的最佳实践
每种语言都应该包含在您的信息架构的某个根目录下。最好的选择是为您网站的每个特定区域获取 TLD (mysite.fr)。虽然这有时不可行,但第二种选择是使用子域 (fr.mysite.com),第三种选择是使用子文件夹 (mysite.com/fr)。这使我们最容易综合查看一组页面并最好地确定语言/区域。 不要将其作为参数 (mysite.com/products/iphone/lang=en®ion=us),这是我们最难检测的情况。
我们有语言分类器(人工智能网络)来尝试确定页面描述的语言/地区。因此,请确保您的页面上有足够的线索来说明语言是什么。例如。如果页面是法文,请确保元描述标签也是法文,<h1>
也是如此。标签,标题,并确保你有几句可靠的法语句子。许多网站会混合使用多种语言,页面上几乎没有实际的法语
电话号码、邮寄地址和地理位置名称也是搜索引擎识别页面区域/语言的重要线索。好好使用它们(并确保它们是页面上的实际文本,而不是图像)
使用 Google 网站站长工具指定您网页的语言和区域。创建一个帐户,验证您的网站,然后您可以指定网站不同部分的目标区域和语言。
错误信息 - lang 属性,或您可能听说过的任何语言标签,目前都没有被任何搜索引擎使用。当我们 (Microsoft Bing) 去年对这些进行分析时,人们使用的最常见的“标准”lang 标签只出现在网络上 0.000125% 的页面上——不足以发挥作用!
Vanessa Fox(她建立了谷歌的网站管理员中心,并创建了站点地图协议(protocol))最近写了一篇特别好的文章,内容是关于谷歌如何看待本地化,以及这对网站架构意味着什么。我建议在这里查看:http://www.ninebyblue.com/blog/making-geotargeted-content-findable-for-the-right-searchers/
关于seo - 国际化和搜索引擎优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1828317/
我有一个 Java 字符串,但在处理时遇到了问题。我有一个字符串 s,它的值为丞(我随机选择的一个汉字,我不会说中文)。如果我打电话 String t = new String(s.getBytes(
在Qt中,所有的输入部件和文本绘制方式对Qt支持的所有语言都提供了内置的支持。Qt内置的字体引擎可以在同一时间正确而且精细地绘制不同的文本,这些文本可以包含来自众多不同书写系统的字符。如果想了解更多的
如何实现字段标签、帮助文本等的国际化支持。字段的标准乘法似乎不起作用例如文档中给出的用于创建联系表单的示例。我尝试为其他语言添加额外的字段(文档中描述的第一种方法) from django.db
是否有可能当我在操作类中使用“getText(”keyName”); 时,我可以指定仅从 ENGLISH 资源包中选择值。因为我只想将此值用于日志记录目的。 任何想法我怎么能做到这一点? BR 标准委
我有一些关于 GWT 的国际化解决方法的问题。 1) 处理直接写入 ui.xml 文件的静态文本的最佳方式是什么? 目前,我正在使用 Messages-Interface 来翻译 Java 生成的文本
我在 Symfony 2 中遇到了一个奇怪的翻译问题。 这是我的config.yml imports: - { resource: parameters.yml } - { resou
对于我的大部分应用程序,我可以使用 https://developers.google.com/web-toolkit/doc/latest/DevGuideI18n 中列出的推荐国际化技术。 (主要
我使用 Android Studio 创建了一个新的 Flutter 项目。我正在使用null-safety,并且正在物理设备上运行应用程序,但代码生成无法正常工作,没有flutter_gen.dar
这里是菜鸟。 我正在尝试对基于命令行的程序实现国际化。以下是 java 国际化路径中可用的内容。 import java.util.*; public class I18NSample { s
我使用 Android Studio 创建了一个新的 Flutter 项目。我正在使用null-safety,并且正在物理设备上运行应用程序,但代码生成无法正常工作,没有flutter_gen.dar
我正在开发一个需要多语言的应用程序。 我正在尝试关注 this国际化教程。但是,当我尝试“使用基本国际化”时, View 中没有列出我的 Storyboard。 我正在使用 XCode 4.6.3 我
我住在印度(有超过20种语言)我正在尝试在网站中实现java国际化。 但是在 Locale.getAvailableLocales() 中,本地语言不可用。我的情况是否可以实现国际化? 如果可能的话字
我有以下 SDN 4 实体: 决策、特征和值: @NodeEntity public class Value { private final static String SET_FOR = "
关于MySql,是否有支持所有或绝大多数语言的字符集? 最佳答案 统一码。它有几种编码:UTF-8、UTF-16 和 UTF-32。 来自 http://en.wikipedia.org/wiki/U
我目前正在使用 Vuepress。但是我想要在我的 Vuepress 站点中使用多种语言。经过 3 天的挣扎,我决定把我的问题放在这里。 (是的,我查看了 Vuepress 文档:https://vu
我需要返回一个 strftime() 调用,该调用使用与我本地机器/操作系统上设置的语言不同的语言。是否可以选择返回语言? 最佳答案 对于可靠的 i18n/L10N,可由必须在同一运行中提供不同本地化
我有一些按钮,按下它们后我想播放一些音频。按钮的名称是音频文件的名称 private func playAudio(title : String){ audioPlayer = AVAudio
如何更改 HTML5 的消息(或者它会根据浏览器的语言自动更改?) 例如: E-mail: 当我在 Opera 运行此代码(来自 W3schools)
我发现很多关于 url schemes 的话题,最常见的是: www.mysite.com/fr/products www.mysite.com/en/products www.mysite.com/
在 Android WebView 中处理国际化/本地化的最佳方式是什么。理想情况下,我想访问以下位置的所有字符串资源: res/values/strings.xmlres/values-de/str
我是一名优秀的程序员,十分优秀!