veb74 10 Опубликовано: 25 марта 2011 Рассказать Опубликовано: 25 марта 2011 После этих действий ваш второй сайт будет использовать базу данных для пользователей и групп пользователей от первого сайта, Подскажите пожалуйста. Мелкая неприятность. Названия групп Guest вместо Гость на русском сайте так же отображаются. Их нельзя сделать для каждого домена свои. Для русского пусть будет Гость. Цитата Ссылка на сообщение Поделиться на других сайтах
CyberMama 0 Опубликовано: 2 апреля 2011 Рассказать Опубликовано: 2 апреля 2011 Дабы не плодить тем спрошу тут - если мне нужен не мультиязычный сайт с контентом на нескольких языках, а только мультиязычный интерфейс - с переключателем аналогично переключателю выбора шаблонов - (удивлена что его нет по умолчанию) - вместо того чтобы мудрить с копиями шаблонов на разных языках, и тем более - с языковыми поддоменами - не достаточно ли будет все слова из шаблонов\ скриптов заменить языковыми переменными и засунуть их в языковые файлы ? Цитата Ссылка на сообщение Поделиться на других сайтах
CyberMama 0 Опубликовано: 2 апреля 2011 Рассказать Опубликовано: 2 апреля 2011 (изменено) Хмм... ну в общем как выяснилось - можно, но сложнее чем хотелось бы В общих чертах механизм такой 1. в файл /engine/modules/functions.php добавляем перед ?> function retlang($param) { global $lang; return $lang["$param"]; } 2. в файл класса шаблонов /engine/classes/templates.class.php перед if( isset( $this->result[$tpl] ) ) $this->result[$tpl] .= $this->copy_template; else $this->result[$tpl] = $this->copy_template; добавляем if (strpos ( $this->copy_template, "{lang=" ) !== false) { $this->copy_template = preg_replace ( "#\\{lang=(.+?)\\}#ies","retlang('\\1')", $this->copy_template ); } 3. заменяем в шаблонах фразы например на переменные типа {lang=phrasemain} [например {lang=phrasemain} вместо "Главная" {lang=phraserules} вместо "Правила сайта"] 4. в файлы языков (website.lng) в массив $lang добавляем строчки (например после 'wysiwyg_language' => "ru",) для нашего примера 'phrasemain'=>"Главная", 'phraserules'=>"Правила сайта", Пункты 3,4 повторяем от забора и до обеда Может конечно велосипед изобрела... но не намного геморройнее чем копии шаблонов на другие языки переводить, особенно если языков надо больше чем 2 Изменено 2 апреля 2011 пользователем CyberMama Цитата Ссылка на сообщение Поделиться на других сайтах
Sokali 7 Опубликовано: 9 апреля 2011 Рассказать Опубликовано: 9 апреля 2011 (изменено) Нет не у кого скрипта переключения языка? К примеру русcкая версия www.site.ru/company.html, нажимаешь на ссылку и попадаешь на en.site.ru/company.html или www.site.ru/en/company.html. Или может кто подскажет, как такое реализовать? Изменено 9 апреля 2011 пользователем Sokali Цитата Ссылка на сообщение Поделиться на других сайтах
WebSet 74 Опубликовано: 9 апреля 2011 Рассказать Опубликовано: 9 апреля 2011 Sokali, Можно через гугл API translate Цитата Ссылка на сообщение Поделиться на других сайтах
Belsover 0 Опубликовано: 9 апреля 2011 Рассказать Опубликовано: 9 апреля 2011 Переводчик сайтов Google Цитата Ссылка на сообщение Поделиться на других сайтах
veb74 10 Опубликовано: 10 апреля 2011 Рассказать Опубликовано: 10 апреля 2011 ИМХО если человек зашел на сайт с русским языком , увидел кнопку EN, то ему не нужен уже русский сайт. А иначе зачем, изучать языки, сравнивая новости на 2 языках? Цитата Ссылка на сообщение Поделиться на других сайтах
Sokali 7 Опубликовано: 10 апреля 2011 Рассказать Опубликовано: 10 апреля 2011 Переводчик сайтов Google Если на сайте используется сложный текст или это сайт нормальной компании, то данный вариант не подходит, так как все мы знаем, как переводят переводчики. ИМХО если человек зашел на сайт с русским языком , увидел кнопку EN, то ему не нужен уже русский сайт. А иначе зачем, изучать языки, сравнивая новости на 2 языках? Полностью согласен, но бывают случаи, когда необходимо такое переключение. Один из вариантов решения вопроса подобной многоязычности 1. Создаем домен 3 уровня, вида eng.site.ru 2. Разворачиваем англоязычный сайт 3. Пользуемся советом и объединяем авторизацию 4. Создаем статические страницы, разделы, новости абсолютно индентичные site.ru (русской версии) 5. Создаем в директории site.ru engine/modules/ файд lang_eng.php, с кодом <?php echo "http://eng.site.ru".$_SERVER['REQUEST_URI']; ?> 6. Добавляем в файл шаблона main.tpl ссылку на англоязычную версию сайта, вида <a href="{include file="engine/modules/lang.php"}">English</a> Повторяем шаг 5,6 для сайта eng.site.ru, но уже создавая ссылку на русскую версию. Дополнительно можно связать админки добавив соотвествующие ссылки в них. Для этого в файле engine/skins/default.skin.php можно добавить после <div class="navigation"> строчку вида <img style="vertical-align: middle;border: none;" src="engine/skins/images/p1.gif" width="25" height="8" border="0"><a href="http://eng.site.ru/admin.php" class=navigation>English</a> Аналогично для второго сайта При использование данного метода может возникнуть проблема, что в случае если названия некоторых страниц отличаются, то будет возникать 404 ошибка. Здесь можно предложить, создать полноценную страницу для ошибки 404, либо делать редирект на главную в случае её возникновения. У данного варианта безусловно есть свои минусы и неудобства, но лучшего способа пока не придумал. Что же касается возможности перключения без домена третьего уровня, к примеру, путем создания папки eng, решение есть, в файл lang_eng.php надо вставить код <?php echo "http://".$_SERVER['SERVER_NAME']."/eng/".$_SERVER['REQUEST_URI']; ?> Но в здесь может возникнуть множество проблем с ЧПУ. Цитата Ссылка на сообщение Поделиться на других сайтах
NtX 10 Опубликовано: 19 августа 2011 Рассказать Опубликовано: 19 августа 2011 (изменено) n0lik, а как вы перевели системные вещи, например, календарь или сообщения движка? Изменено 19 августа 2011 пользователем NtX Цитата Ссылка на сообщение Поделиться на других сайтах
NtX 10 Опубликовано: 23 августа 2011 Рассказать Опубликовано: 23 августа 2011 Доперло. Просто надо было внимательнее читать тут ))) Цитата Ссылка на сообщение Поделиться на других сайтах
NtX 10 Опубликовано: 25 августа 2011 Рассказать Опубликовано: 25 августа 2011 Столкнулся с такой ситуацией. Сделаны 2 шаблона - RU и EN и по описанный выше методике сделал переключение скинов на сайте с привязкой к каждому шаблону своего языка. Далее сделаны две структуры категорий: Главная (main_ru) -- Новости (news_ru) -- Прочее (others_ru) Main (main_en) -- News (news_en) -- Others (others_en) Каждой категории указано с каким шаблоном использоваться. Теперь самое интересное. Заполняем новости. Если выводим /main_ru то получаем то, что лежит в, так скажем, русской структуре. Если выводим /main_en то получаем то, что лежит в, так скажем, английской структуре. Но если я просто наберу адрес сайта, то на главной он радостно вываливает весь контент в независимости от установленного шаблона! Вопрос - как сделать фильтрацию? Ведь за вывод главной отвечает {content} и с ним я поиграться никак не могу. Цитата Ссылка на сообщение Поделиться на других сайтах
alexmurphy 45 Опубликовано: 26 августа 2011 Рассказать Опубликовано: 26 августа 2011 Как вариант, определять язык браузера через HTTP_ACCEPT_LANGUAGE и исходя из этого делать редирект на /main_ru либо на /main_en. Цитата Ссылка на сообщение Поделиться на других сайтах
abasive 41 Опубликовано: 13 января 2013 Рассказать Опубликовано: 13 января 2013 Celsoft Например на англоязычном сайте мы меняем префикс пользователей чтобы было единая регистрация define ("USERPREFIX", "dle"); а такое можно сделать и с комметариями, чтобы придобавлении комментов на обе сайта они добавились? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 13 января 2013 Рассказать Опубликовано: 13 января 2013 а такое можно сделать и с комметариями, чтобы придобавлении комментов на обе сайта они добавились? нет нельзя. Цитата Ссылка на сообщение Поделиться на других сайтах
abasive 41 Опубликовано: 13 января 2013 Рассказать Опубликовано: 13 января 2013 нет нельзя. А есть решение? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 076 Опубликовано: 13 января 2013 Рассказать Опубликовано: 13 января 2013 А есть решение? Конечно, это написать персональную модификацию скрипта на своем сайте. Я не пишу модификаций скрипта на заказ, поэтому в данном вопросе ничем вам к сожалению помочь не могу. Цитата Ссылка на сообщение Поделиться на других сайтах
ndiezel 0 Опубликовано: 22 июля 2014 Рассказать Опубликовано: 22 июля 2014 Тут ещё в начале этой темы был вопрос: зачем вообще делать эту "заморочку" с двумя движками, двумя шаблонами, почему нельзя сделать два отдельных сайта с единой регистрацией для пользователей?.. Вот у меня - развлекательный сайт по флеш-играм. В кажой новости - идёт картинка и файл флеш-игры. Если я буду одну и ту же игру заливать на два сайта - это довольно ощутимо займёт место на хостинге. Поэтому мне не подходит второй вариант, написанный Целсофтом. Я даже решил проблему русских тайтлов и ключевых слов в английской версии сайта. Осталась одна задача - как в выводе рсс сделать чтоб выводились не русские текста, а текст из доп. полей? Может кто подскажет? Цитата Ссылка на сообщение Поделиться на других сайтах
MozgFx 1 Опубликовано: 29 октября 2014 Рассказать Опубликовано: 29 октября 2014 (изменено) Я даже решил проблему русских тайтлов и ключевых слов в английской версии сайта. Осталась одна задача - как в выводе рсс сделать чтоб выводились не русские текста, а текст из доп. полей? Может кто подскажет? Что мешает немного доработать движок? Там все интуитивно понятно. Изменено 29 октября 2014 пользователем MozgFx Цитата Ссылка на сообщение Поделиться на других сайтах
Arkoadmin 0 Опубликовано: 8 января 2015 Рассказать Опубликовано: 8 января 2015 Здраствуйте. Я новичок и хочу знать можно ли на DLE создать сайт с тремя языками (русский, английский, армянский).? Просто хочу знать можно ли и как.? Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.