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 час назад, Семен сказал: Методом тыка? Методом проб и ошибок Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.