Здравствуйте Гость!


Запомнить.
Авто. вход.
Забыли пароль?
Регистрация

ПОДПИСКА Подписавшись по E-mail, Вы будете получать уведомления о новых статьях к себе на почту.
Подписатся на почтовую рассылку на сайте astranar.ru
Подписаться



ДОБАВЛЯЙТЕСЬ В ДРУЗЬЯ Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте на стене моего аккаунта.
Мой аккаунт Вконтакте
Мой аккаунт
Главная - PHP - Как сделать мультиязычный сайт или многоязычный сайт своими руками.


Как сделать мультиязычный сайт или многоязычный сайт своими руками.


Как сделать мультиязычный сайт или многоязычный сайт своими руками

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

Так давайте же разберемся как же нам сделать такой сайт!? А все опять же просто(как это не смешно).

Для начала нам понадобятся языковые файлы и главная страница.

То есть структура сайта будет такова:
language/language.ru.php
language/language.en.php
language/language.ua.php
index.php


Для начала мы создадим для каждого языка свой языковой пакет для определенных слов на сайте:
- Русский языковый файл (language/language.ru.php)

// Русский языковой Пакет
// Источник: astranar.ru

$lang = array(
"title" => "Мой многоязычный сайт на PHP",
"header_title" => "Многоязычный сайт",
"site_slogan" => "Заголовок сайта",

// Меню
"index_menu" => "Главная страница",
"contact_menu" => "Контакты",
"site_map" => "Карта сайта",
"advertisement"=> "Реклама",
);

- Английский языковой пакет (language/language.en.php)
// Английский языковый файл
// Источник: astranar.ru
$lang = array(
"title" => "My multi_language site on a PHP",
"header_title" => "My multi_language site",
"site_slogan" => "Site of Programmer",

// Меню
"index_menu" => "Start page",
"contact_menu" => "Contakts",
"site_map" => "Site map",
"advertisement"=> "Reklame",
);


- Украинский языковой Пакет (language/language.ua.php)
// Украинский языковый файл
// Источник: astranar.ru
$lang = array(
"title" => "Мій багатомовний сайт на PHP",
"header_title" => "Багатомовний сайт",
"site_slogan" => "Сайт програміста",

// Меню
"index_menu" => "Головна сторінка",
"contact_menu" => "Контакти",
"site_map" => "Карта сайту",
"advertisement"=> "Реклама",
);

Теперь создаем главный файл index.php который будет вызывать языковой пакет в зависимости от выбора пользователя.

<?php
@session_start();
// Массив доступных для выбора языков
$LangArray = array("ru", "ua", "en");
// Язык по умолчанию
$DefaultLang = "ru";
// Если язык уже выбран и сохранен в сессии отправляем его скрипту
if(@$_SESSION['NowLang']) {
// Проверяем если выбранный язык доступен для выбора
if(!in_array($_SESSION['NowLang'], $LangArray)) {
// Неправильный выбор, возвращаем язык по умолчанию
$_SESSION['NowLang'] = $DefaultLang;
}
}
else {
$_SESSION['NowLang'] = $DefaultLang;
}
// Выбранный язык отправлен скрипту через GET
$language = addslashes($_GET['lang']);
if($language) {
// Проверяем если выбранный язык доступен для выбора
if(!in_array($language, $LangArray)) {
// Неправильный выбор, возвращаем язык по умолчанию
$_SESSION['NowLang'] = $DefaultLang;
}
else {
// Сохраняем язык в сессии
$_SESSION['NowLang'] = $language;
}
}
// Открываем текущий язык
$CurentLang = addslashes($_SESSION['NowLang']);
include_once ("language/language.".$CurentLang.".php");
?>

<a href='index.php?lang=ru'><img src='img/ru.png'>Russian</a>
<a href='index.php?lang=ua'><img src='img/en.png'>English</a>
<a href='index.php?lang=ro'><img src='img/ua.png'>Ukraine</a>

Теперь когда мы будем переходить по ссылкам
ваш_сайт.ru/index.php?lang=ru (Будет русский язык, скрипт загрузит файл language.ru.php)
и так далее для каждого языка (ru,en,ua).
Удачи вам.



Просмотров страницы: 22928
Урок добавлен: 26 Ноября 2012

<<<Предыдущая статьяСледущая статья >>>

Копирование материалов разрешается только с указанием автора (Пальгов Олег) и индексируемой прямой ссылкой на сайт (https://astranar.ru/)!

Добавляйтесь ко мне в друзья ВКонтакте: https://vk.com/palgov_oleg. Если Вы хотите оценить меня и мою работу, то напишите на стене моего аккаунта ВКонтакте.

Если Вы не хотите пропустить новые материалы на сайте, то Вы можете подписаться на обновления:
Подписаться на обновления


Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Ещё статьи по php:
• Готовый Движок для своего собственного блога
• Защита php скрипта, межсайтовый скриптинг. Защита от атак на сайт!
• Вывод из mysql
• Как передать несколько значений checkbox?


Комментарии (0)


Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.
Как сделать мультиязычный сайт или многоязычный сайт своими руками.
Если бы водителей принимали на работу так же, как программистов, то выглядело это примерно так: Вакансия - водитель Требования: профессиональные навыки в управлении легковыми и грузовыми автомобилями,троллейбусами,трамваями, поездами метрополитена и фуникулера, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/средними танками, находящимисяна вооружении стран СНГ и НАТО. Навыки раллийного и экстремального вождения обязательны. Опыт управления болидами "Формулы-1" - приветствуется. Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, антиблокировочных систем, навигационных систем и автомобильных аудиосистем ведущих поизводителей - обязательны. Опыт проведения кузовных и окрасочных работ - приветствуется. Претенденты должны иметь сертификаты Mercedes, BMW, а также справки об участии в крупных международных ралли не более чем двухлетней давности. Зарплата: 1500-2500 рублей, определяется по результатам собеседования. Кроме того иметь представление о длительных морских походах на атомных подводных лодках, навыки пилотирования новейших истребителей СУ Данная вакансия предусматривает мелкий ремонт чайников, калькуляторов, спутниковых систем навигации, ядерных реакторов и работы на токарных и фрезерных станках.

Автор неизвестен


Вступайте в группу!