THEOUS Опубликовано 22 июня, 2015 Жалоба Поделиться Опубликовано 22 июня, 2015 (изменено) Доброго времени суток, дорогие пользователи форума. У многих возникали вопросы по добавлению языков в сборку, в просто народие называемых как "ланги". И так, начнём с того, как они работают. У нас есть файл site.lng Который лежит по пути lang/Russian/site.lng Для того, что бы подключить новый языковой пакет, нам нужно создать папку с файлом site.lng сделать всё нужно примерно так: вашсайт/lang/имяпапки(к примеру:English)/site.lng Далее идём в админ панель =>> настройки системы =>> Список используемых языков (название папок) Там вы увидите такой текст: Русский | Russian Это подключение вашего языкового пакета. Пишем: Английский | English Далее идём по пути: templates/шаблон/js/ И создаём папку English с файлом внутри.Можно просто создать копию папки Russian и переименовать. Всё, наш "lang" подключен. Теперь нам нужно все слова из файлов таких как tpl js php У меня есть данный код(я взял его из файла profile.tpl): [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>Статистика страницы</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>Изменить фотографию</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>Удалить фотографию</div></a>[/owner] Теперь нам нужно слова занести в файл site.lng К тому же, не только в тот, который находить в папке Russian , а и тот, который в папке English Вот так вы должны заполнить документ.К тому же, они должны быть под одинаковым номером, что бы правильно выводились в шаблоне. 'lang_001' => 'Статистика страницы', 'lang_002' => 'Изменить фотографию', 'lang_003' => 'Удалить фотографию', Вносим слова, данным способом в оба файла site.lng, и заменяем их в profile.tpl данным образом: [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_001}</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_002}</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_003}</div></a>[/owner] Точнее вот таким текстом: {translate=lang_001} Где lang_001 это id вашего слова в файле site.lng Так же изменяем и в js файлах. Разобрались с js и tpl , теперь на очереди php файлы. Здесь всё немного по иному. Используется след. код: $lang['lang_001'] Возьмём этот кусочек с файла functions.php if($type == 'rec'){ if($numres == 1){ $gram_num_record = 'запись'; } elseif($numres < 5){ $gram_num_record = 'записи'; } elseif($numres < 21){ $gram_num_record = 'записей'; } elseif($numres == 21){ $gram_num_record = 'запись'; } } У вас должно выйти вот так: Сразу говорю, что данные скобки 'запись'; вам нужно убирать, и писать просто $lang['lang_001']; if($type == 'rec'){ if($numres == 1){ $gram_num_record = $lang['lang_001']; } elseif($numres < 5){ $gram_num_record = $lang['lang_002']; } elseif($numres < 21){ $gram_num_record = $lang['lang_003']; } elseif($numres == 21){ $gram_num_record = $lang['lang_004']; } } Думаю я вам помог.Будут вопросы задавайте в теме, с радостью отвечу.Удачи! Изменено 30 июля, 2015 пользователем Shaman 3 Ссылка на комментарий Поделиться на другие сайты Поделиться
igor2720 Опубликовано 22 июня, 2015 Жалоба Поделиться Опубликовано 22 июня, 2015 Доброго времени суток, дорогие пользователи форума. У многих возникали вопросы по добавлению языков в сборку, в просто народие называемых как "ланги". И так, начнём с того, как они работают. У нас есть файл site.lng Который лежит по пути lang/Russian/site.lng Для того, что бы подключить новый языковой пакет, нам нужно создать папку с файлом site.lng сделать всё нужно примерно так: вашсайт/lang/имяпапки(к примеру:English)/site.lng Далее идём в админ панель =>> настройки системы =>> Список используемых языков (название папок) Там вы увидите такой текст: Русский | Russian Это подключение вашего языкового пакета. Пишем: Английский | English Далее идём по пути: templates/шаблон/js/ И создаём папку English с файлом внутри.Можно просто создать копию папки Russian и переименовать. Всё, наш "lang" подключен. Теперь нам нужно все слова из файлов таких как tpl js php У меня есть данный код(я взял его из файла profile.tpl): [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>Статистика страницы</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>Изменить фотографию</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>Удалить фотографию</div></a>[/owner] Теперь нам нужно слова занести в файл site.lng К тому же, не только в тот, который находить в папке Russian , а и тот, который в папке English Вот так вы должны заполнить документ.К тому же, они должны быть под одинаковым номером, что бы правильно выводились в шаблоне. 'lang_001' => 'Статистика страницы', 'lang_002' => 'Изменить фотографию', 'lang_003' => 'Удалить фотографию', Вносим слова, данным способом в оба файла site.lng, и заменяем их в profile.tpl данным образом: [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_001}</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_002}</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_003}</div></a>[/owner] Точнее вот таким текстом: {translate=lang_001} Где lang_001 это id вашего слова в файле site.lng Так же изменяем и в js файлах. Разобрались с js и tpl , теперь на очереди php файлы. Здесь всё немного по иному. Используется след. код: $lang['lang_001'] Возьмём этот кусочек с файла functions.php if($type == 'rec'){ if($numres == 1){ $gram_num_record = 'запись'; } elseif($numres < 5){ $gram_num_record = 'записи'; } elseif($numres < 21){ $gram_num_record = 'записей'; } elseif($numres == 21){ $gram_num_record = 'запись'; } } У вас должно выйти вот так: Сразу говорю, что данные скобки 'запись'; вам нужно убирать, и писать просто $lang['lang_001']; if($type == 'rec'){ if($numres == 1){ $gram_num_record = $lang['lang_001']; } elseif($numres < 5){ $gram_num_record = $lang['lang_002']; } elseif($numres < 21){ $gram_num_record = $lang['lang_003']; } elseif($numres == 21){ $gram_num_record = $lang['lang_004']; } } Думаю я вам помог.Будут вопросы задавайте в теме, с радостью отвечу.Удачи! А как сделать переключение между языками для пользователя? Ссылка на комментарий Поделиться на другие сайты Поделиться
THEOUS Опубликовано 22 июня, 2015 Автор Жалоба Поделиться Опубликовано 22 июня, 2015 Доброго времени суток, дорогие пользователи форума. У многих возникали вопросы по добавлению языков в сборку, в просто народие называемых как "ланги". И так, начнём с того, как они работают. У нас есть файл site.lng Который лежит по пути lang/Russian/site.lng Для того, что бы подключить новый языковой пакет, нам нужно создать папку с файлом site.lng сделать всё нужно примерно так: вашсайт/lang/имяпапки(к примеру:English)/site.lng Далее идём в админ панель =>> настройки системы =>> Список используемых языков (название папок) Там вы увидите такой текст: Русский | Russian Это подключение вашего языкового пакета. Пишем: Английский | English Далее идём по пути: templates/шаблон/js/ И создаём папку English с файлом внутри.Можно просто создать копию папки Russian и переименовать. Всё, наш "lang" подключен. Теперь нам нужно все слова из файлов таких как tpl js php У меня есть данный код(я взял его из файла profile.tpl): [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>Статистика страницы</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>Изменить фотографию</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>Удалить фотографию</div></a>[/owner] Теперь нам нужно слова занести в файл site.lng К тому же, не только в тот, который находить в папке Russian , а и тот, который в папке English Вот так вы должны заполнить документ.К тому же, они должны быть под одинаковым номером, что бы правильно выводились в шаблоне. 'lang_001' => 'Статистика страницы', 'lang_002' => 'Изменить фотографию', 'lang_003' => 'Удалить фотографию', Вносим слова, данным способом в оба файла site.lng, и заменяем их в profile.tpl данным образом: [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_001}</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_002}</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_003}</div></a>[/owner] Точнее вот таким текстом: {translate=lang_001} Где lang_001 это id вашего слова в файле site.lng Так же изменяем и в js файлах. Разобрались с js и tpl , теперь на очереди php файлы. Здесь всё немного по иному. Используется след. код: $lang['lang_001'] Возьмём этот кусочек с файла functions.php if($type == 'rec'){ if($numres == 1){ $gram_num_record = 'запись'; } elseif($numres < 5){ $gram_num_record = 'записи'; } elseif($numres < 21){ $gram_num_record = 'записей'; } elseif($numres == 21){ $gram_num_record = 'запись'; } } У вас должно выйти вот так: Сразу говорю, что данные скобки 'запись'; вам нужно убирать, и писать просто $lang['lang_001']; if($type == 'rec'){ if($numres == 1){ $gram_num_record = $lang['lang_001']; } elseif($numres < 5){ $gram_num_record = $lang['lang_002']; } elseif($numres < 21){ $gram_num_record = $lang['lang_003']; } elseif($numres == 21){ $gram_num_record = $lang['lang_004']; } } Думаю я вам помог.Будут вопросы задавайте в теме, с радостью отвечу.Удачи! А как сделать переключение между языками для пользователя? По сути, ты и делаешь выбор языков.Когда ты сделаешь действия этой инструкции, то у тебя получится что то типо того: Ссылка на комментарий Поделиться на другие сайты Поделиться
viiprogrammer Опубликовано 25 июня, 2015 Жалоба Поделиться Опубликовано 25 июня, 2015 Полезная тема 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
THEOUS Опубликовано 25 июня, 2015 Автор Жалоба Поделиться Опубликовано 25 июня, 2015 Полезная тема спасибо Ссылка на комментарий Поделиться на другие сайты Поделиться
igor2720 Опубликовано 25 июня, 2015 Жалоба Поделиться Опубликовано 25 июня, 2015 Доброго времени суток, дорогие пользователи форума. У многих возникали вопросы по добавлению языков в сборку, в просто народие называемых как "ланги". И так, начнём с того, как они работают. У нас есть файл site.lng Который лежит по пути lang/Russian/site.lng Для того, что бы подключить новый языковой пакет, нам нужно создать папку с файлом site.lng сделать всё нужно примерно так: вашсайт/lang/имяпапки(к примеру:English)/site.lng Далее идём в админ панель =>> настройки системы =>> Список используемых языков (название папок) Там вы увидите такой текст: Русский | Russian Это подключение вашего языкового пакета. Пишем: Английский | English Далее идём по пути: templates/шаблон/js/ И создаём папку English с файлом внутри.Можно просто создать копию папки Russian и переименовать. Всё, наш "lang" подключен. Теперь нам нужно все слова из файлов таких как tpl js php У меня есть данный код(я взял его из файла profile.tpl): [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>Статистика страницы</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>Изменить фотографию</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>Удалить фотографию</div></a>[/owner] Теперь нам нужно слова занести в файл site.lng К тому же, не только в тот, который находить в папке Russian , а и тот, который в папке English Вот так вы должны заполнить документ.К тому же, они должны быть под одинаковым номером, что бы правильно выводились в шаблоне. 'lang_001' => 'Статистика страницы', 'lang_002' => 'Изменить фотографию', 'lang_003' => 'Удалить фотографию', Вносим слова, данным способом в оба файла site.lng, и заменяем их в profile.tpl данным образом: [owner]<a href="/my_stats" onClick="Page.Go(this.href); return false;"><img class="icon stat_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_001}</div></a> <a href="/" onClick="Profile.LoadPhoto(); return false;"><img class="icon editphoto_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_002}</div></a> <a href="/" onClick="Profile.DelPhoto(); return false;" id="del_pho_but" {display-ava}><img class="icon del_photo_ic" src="{theme}/images/spacer.gif" alt="" /><div>{translate=lang_003}</div></a>[/owner] Точнее вот таким текстом: {translate=lang_001} Где lang_001 это id вашего слова в файле site.lng Так же изменяем и в js файлах. Разобрались с js и tpl , теперь на очереди php файлы. Здесь всё немного по иному. Используется след. код: $lang['lang_001'] Возьмём этот кусочек с файла functions.php if($type == 'rec'){ if($numres == 1){ $gram_num_record = 'запись'; } elseif($numres < 5){ $gram_num_record = 'записи'; } elseif($numres < 21){ $gram_num_record = 'записей'; } elseif($numres == 21){ $gram_num_record = 'запись'; } } У вас должно выйти вот так: Сразу говорю, что данные скобки 'запись'; вам нужно убирать, и писать просто $lang['lang_001']; if($type == 'rec'){ if($numres == 1){ $gram_num_record = $lang['lang_001']; } elseif($numres < 5){ $gram_num_record = $lang['lang_002']; } elseif($numres < 21){ $gram_num_record = $lang['lang_003']; } elseif($numres == 21){ $gram_num_record = $lang['lang_004']; } } Думаю я вам помог.Будут вопросы задавайте в теме, с радостью отвечу.Удачи! А как сделать переключение между языками для пользователя? По сути, ты и делаешь выбор языков.Когда ты сделаешь действия этой инструкции, то у тебя получится что то типо того: Не получилось((( Можешь помочь? Ссылка на комментарий Поделиться на другие сайты Поделиться
timbios Опубликовано 30 июля, 2015 Жалоба Поделиться Опубликовано 30 июля, 2015 Внимание! Отредактировал тему и перенёс в нужный раздел. Ссылка на комментарий Поделиться на другие сайты Поделиться
Edgaras1 Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Там вы увидите такой текст: Русский | Russian ---- Пишем: Английский | English , я непонемаю, надо добавит рядом, или помениат местами? обянил вобще невтему , ест какои способ полегщце? рускии мой неоцен , спс за ответ. Ссылка на комментарий Поделиться на другие сайты Поделиться
wenjiro Опубликовано 10 августа, 2015 Жалоба Поделиться Опубликовано 10 августа, 2015 Отличный F.A.Q. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
deleteUser Опубликовано 3 сентября, 2018 Жалоба Поделиться Опубликовано 3 сентября, 2018 ОШИБОЧКА - Хорошо было бы есть сделать для каждого пользователя свой язык Например основной русский а если у пользователя выбран язык русский после авторизации переключить на Английский (например в таблице User сделать user_lang и тд) Ссылка на комментарий Поделиться на другие сайты Поделиться
Leymelki Опубликовано 8 декабря, 2019 Жалоба Поделиться Опубликовано 8 декабря, 2019 чет хотел по пробивать и не вышло по этой схеме Ссылка на комментарий Поделиться на другие сайты Поделиться
timbios Опубликовано 8 декабря, 2019 Жалоба Поделиться Опубликовано 8 декабря, 2019 @Karina наверное где-то допустил ошибку, мануал рабочий Ссылка на комментарий Поделиться на другие сайты Поделиться
Leymelki Опубликовано 8 декабря, 2019 Жалоба Поделиться Опубликовано 8 декабря, 2019 17 минут назад, Mr.Timbios сказал: @Karina наверное где-то допустил ошибку, мануал рабочий много раз пробвал! в файл запишу слово все как надо а в шаблоне не вылазит(( Ссылка на комментарий Поделиться на другие сайты Поделиться
timbios Опубликовано 8 декабря, 2019 Жалоба Поделиться Опубликовано 8 декабря, 2019 @Karina это нужно сборку смотреть, я так ничем не смогу помочь Ссылка на комментарий Поделиться на другие сайты Поделиться
Leymelki Опубликовано 8 декабря, 2019 Жалоба Поделиться Опубликовано 8 декабря, 2019 Только что, Mr.Timbios сказал: @Karina это нужно сборку смотреть, я так ничем не смогу помочь дак обычная что тут лежит тиа чистая но с беседами Ссылка на комментарий Поделиться на другие сайты Поделиться
GoogleChrome Опубликовано 27 декабря, 2019 Жалоба Поделиться Опубликовано 27 декабря, 2019 если текст не в tpl а в php файле? как там подключить lng? Ссылка на комментарий Поделиться на другие сайты Поделиться
timbios Опубликовано 27 декабря, 2019 Жалоба Поделиться Опубликовано 27 декабря, 2019 1 час назад, GoogleChrome сказал: если текст не в tpl а в php файле? как там подключить lng? Попробуй сначала дочитать статью полностью 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
GoogleChrome Опубликовано 28 декабря, 2019 Жалоба Поделиться Опубликовано 28 декабря, 2019 создавал новый файл php для функций. при запуске берет почему-то только из русского ланга. где-то нужно подключить обработку нового php файла? Ссылка на комментарий Поделиться на другие сайты Поделиться
vadymholunha Опубликовано 31 июля, 2023 Жалоба Поделиться Опубликовано 31 июля, 2023 В файле functions.php я так вводил. Тоже всё работает, нареканий никаких не обнаружено Всё работает, просто нужно внимательно читать мануал. У кого что не заработало, внимательно присмотритесь - где сделали ошибку Ссылка на комментарий Поделиться на другие сайты Поделиться
Семен Опубликовано 31 июля, 2023 Жалоба Поделиться Опубликовано 31 июля, 2023 5 часов назад, vadymholunha сказал: В файле functions.php я так вводил. Тоже всё работает, нареканий никаких не обнаружено Всё работает, просто нужно внимательно читать мануал. У кого что не заработало, внимательно присмотритесь - где сделали ошибку Методом тыка? Ссылка на комментарий Поделиться на другие сайты Поделиться
vadymholunha Опубликовано 1 августа, 2023 Жалоба Поделиться Опубликовано 1 августа, 2023 21 час назад, Семен сказал: Методом тыка? Методом проб и ошибок Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения