Начинайте только с файлов сообщений , написанных на языке, на котором написано приложение.
- Разработчик может написать приложение, используя только файлы сообщений, и позаботиться о переводе позже.
- Файлы I18n содержат текст для перевода слева и переводы справа в одном файле.
- Файлы I18n можно анализировать и редактировать с помощью таких модулей, как серверные части для переводчиков.
Сообщения / forms.php
<?php
return array(
'user' => array(
'label' => 'Email',
'title' => 'Enter your email address.',
),
'pass' => array(
'label' => 'Password',
'title' => '8 characters or more',
),
'login' => array(
'label' => 'Log On',
),
'submit' => array(
'label' => 'Submit',
),
);
После того, как все сообщения установлены, добавьте переводы :
i18n / es.php
<?php
return array(
'Email' => 'Email',
'Password' => 'Contraseña',
'Log On' => 'Acceder',
);
При вызове Kohana::message()
оберните его в __()
, чтобы при установке языка он попытался использовать переведенное сообщение:
AppPath / просмотров / Auth / login.php
<label for="user_field"><?php echo __(Kohana::message('forms', 'user.label')); ?></label>
<input type="text" id="user_field" name="user" value="" title="<?php echo __(Kohana::message('forms', 'user.title'); ?>">
<br />
<label for="pass_field"><?php echo __(Kohana::message('forms', 'pass.label')); ?></label>
<input type="password" id="pass_field" name="user" value="" title="<?php echo __(Kohana::message('forms', 'pass.title'); ?>">
Для установки языка используйте I18n::lang()
:
I18n::lang('es');
Конечно, установка языка вручную не очень полезна. Это может быть установлено с помощью:
- выпадающий список
- язык браузера