Многоязычный сайт - PullRequest
1 голос
/ 18 июля 2009

Я бы хотел иметь домашнюю страницу моего сайта на языке клиента. Поскольку сайт размещен в одном месте, но доступ к нему возможен через любое количество стран. Поэтому я хочу, чтобы домашняя страница была на языке запрошенного клиентского браузера.

Существует также один важный момент, т. Е. Предположим, что если язык клиента не поддерживается на сервере, сайт должен быть отображен на резервном языке.

Есть ли у вас пример сайта / хорошая ссылка?

Ответы [ 5 ]

5 голосов
/ 18 июля 2009

Это на самом деле не ответ на вопрос, а общий совет ... Если вы решили отправить вывод пользователю на языке, который вы считаете для него наилучшим, на основе GeoIP, языка браузера и т. Д., Сделайте конечно, ОЧЕНЬ просто найти элемент управления выбором языка на сайте всегда, даже если вы не знаете язык.

Нет ничего более раздражающего, чем показ сайта на венгерском языке только потому, что вы оказались в вестибюле отеля на компьютере, на котором у вас нет доступа к настройкам браузера (если вы не говорите на языке).

Кроме того, несмотря на то, что я швед и у меня шведский язык в качестве родного языка, я почти всегда предпочитаю английский или немецкий сайт на английском или немецком языке перед переведенным. Важные вещи теряются в переводе слишком часто, и пока язык не останавливает меня, я знаю, что я предпочитаю. Я понимаю, что это не «нормальная ситуация» для большинства ваших пользователей, но, пожалуйста, имейте в виду:)

1 голос
/ 18 июля 2009

Я думаю, что ответ на мой вопрос тоже отвечает на этот вопрос!

0 голосов
/ 23 января 2017

Так я создаю многоязычный сайт. Также имеется опция резервного языка.

Язык кода: PHP

Структура каталогов:

/
|- core
|  |- init.php
|  `- lang
|     |- en_US.UTF-8.ini
|     `- hi_IN.UTF-8.ini
|
`- dashboard.php

Имя файла языка: en_US.UTF-8.ini

[Headers]
HEADER_DASHBOARD = "Dashboard";
HEADER_USERS     = "Users";
HEADER_GROUPS    = "Groups";
HEADER_HELP      = "Help";

[MainMenu]
MENU_DASHBOARD = "Dashboard";
MENU_USERS     = "Users";
MENU_GROUPS    = "Groups";
MENU_HELP      = "Help";

Имя файла: init.php

<?php
$available_lang = [
         'en' => 'en_US.UTF-8',
         'hi' => 'hi_US.UTF-8',
      ];

//check if requested language is available or fallback to default.
$language = (isset($available_lang[$_GET['ln']])) ? $available_lang[$_GET['ln']]:'en_US.UTF-8';

$_SESSION['language'] = $_GET['ln'];

$ini = parse_ini_file("/core/lang/" . $language . ".ini");
?>

Имя файла: dashboard.php? Ln = ru

<?php
require_once 'core/init.php';

if ($_SESSION['language']) == 'en') {
    echo '<a href="?ln=hi">Hindi</a>';
} else {
    echo '<a href="?ln=en">English</span></a>';
}

// example uses
echo $ini['HEADER_GROUPS']; // Dashboard
?>
0 голосов
/ 20 сентября 2014

В учебном пособии по многоязычному веб-сайту вы можете посетить следующие 2 ссылки для ASP.NET Webform и ASP.NET MVC4.

http://dotnetawesome.blogspot.com/2014/09/how-to-create-multilingual-website-in-aspnet-mvc4.html

http://dotnetawesome.blogspot.com/2014/06/how-to-create-multilingual-application-aspnet.html

0 голосов
/ 18 июля 2009

Вы можете посмотреть на .NET Internationalization , который является веб-сайтом для книги с тем же именем. обзор на блоге Крейга Мерфи .

...