1

我打算在我的网站上添加语言功能。我可以看到两种方式:

  • 在 url 中存储语言,所以总是 www.mysite.com/en/introduce、www.mysite.com/en/home,或者如果缺少第一个参数,只需使用默认值。它对书签很有用,但很难对所有可用链接实施
  • 存储在会话中。容易得多,但用户可能会因为看不到 URL 中的语言而感到困惑。

我会说:会话。你打算说什么?有什么经验吗?

4

4 回答 4

7

如果您希望您的所有页面都被搜索引擎索引,您需要将语言参数放在 URL 中。

如果您正在制作更多类似 Facebook 的内容,其中用户需要登录才能以他的个性化语言接收内容,请使用会话。

于 2012-05-25T08:45:38.660 回答
2

您希望将您的语言作为 url 的一部分,否则 google 将无法为不同的国家/地区编制索引。此外,他们可能会认为您在同一页面上有两种类型的内容。

如果只有部分内容发生变化,我会将其存储在会话中,因为如果您只是根据用户来自哪个国家/地区更改公司的联系方式,则更容易实施。但作为一般规则,使用 .htaccess 或您的路由系统给它一个单独的 url。

于 2012-05-25T08:56:02.617 回答
2

我会使用第一种方法与 url 重写引擎一起使用。

Fe 使用 RewriteEngine for Apache 时,您可以将此行添加到您的 .htaccess 中:

RewriteRule ^([a-zA-Z][a-zA-Z])/([a-zA-Z]*)$ content.php?culture=$1&content=$2

甚至这可以工作:

RewriteRule ^([a-zA-Z][a-zA-Z])/([a-zA-Z]*)$ $2.php?culture=$1
于 2012-05-25T08:46:45.960 回答
1

普通用户不会查看 URL 并从那里更改参数。普通用户是点击。将语言选择保持在页面上可见的某个地方以及用户设置中。这不是用户在访问期间想要多次更改的内容。我们正在谈论您可以在第一次访问时询问和设置的设置。目前我讨厌谷歌使用我的 IP 进行操作的方式,假设(错误)如果我从挪威进入,我肯定会说挪威语,并且我可以在挪威语菜单中找到英文版本。我确实喜欢 Etsy.com 的做法,他们在第一次访问时会询问您首选的语言、货币等。如果您接受它们很好,但您可以在此处更改它们而无需导航到菜单。在我看来,使用 cookie 或会话而不是污染 URL。

于 2012-05-25T09:09:16.750 回答