2009-07-18 3 views
1

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

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

У вас есть сайт или хорошая ссылка?

ответ

5

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

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

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

+1

Отличная точка (Могу ли я +100?)! Это не может быть точный ответ на вопрос, но я думаю, что это даже более важно, чем ответ. – Hemant

+0

@Hemant Спасибо ... – Fredrik

0

Это, как я создаю многоязычный веб-сайт. Он также имеет альтернативный вариант языка.

Код Язык: 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 п = ан

<?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 
?> 
Смежные вопросы