Как сделать на сайте выбор между RU и EN?

DrDigital

Участник
Пользователь
Сообщения
33
Розыгрыши
0
Реакции
-3
Репутация
0
Баллы
45
Хочу на иностранных анонсах размещаться, нужно перевести сайт. Подскажите как это сделать?
 

KRIVOSHEEV

Пляшущий с бубном
Местный
Сообщения
159
Розыгрыши
0
Реакции
27
Репутация
1
Баллы
203
Смотря что ты используешь, и какого вида бэк возвращает тебе информацию.
 

Oomg

Пляшущий с бубном
Участник
Сообщения
50
Розыгрыши
0
Реакции
9
Репутация
-10
Баллы
219

6yka

я уловил твоё излучение...
Легенда
Сообщения
1 737
Розыгрыши
0
Реакции
1 037
Репутация
1 382
Баллы
886
забавно будет читать нерусскоязычным пользователям гугл переводчика...
 

Oomg

Пляшущий с бубном
Участник
Сообщения
50
Розыгрыши
0
Реакции
9
Репутация
-10
Баллы
219
забавно будет читать нерусскоязычным пользователям гугл переводчика...
Причем здесь скрипт? К гугл переводчику?

Благодарю, а знаете как флажки вывести)?
Что то типа этого :

Код:
<div class="languages">
        <script type="text/javascript">
            function googleTranslateElementInit() {
                new google.translate.TranslateElement({pageLanguage: 'ru', autoDisplay: false}, 'google_translate_element');
            }
        </script>
        <script type="text/javascript" src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
        <div class="language-heading">Выбор языка:</div>
        <div class="language-list">
            <div class="language-current"><a href="#googtrans(ru|ru)"><img src="{template}/images/ico-ru.png" alt="">RU</a></div>
            <div class="language-dropdown">
                <a href="#googtrans(ru|ru)" data-type="ru" class="hidden"><img src="{template}/images/ico-ru.png" alt=""></a>
                <a href="#googtrans(ru|en)" data-type="en"><img src="{template}/images/ico-en.png" alt=""></a>
                <a href="#googtrans(ru|pl)" data-type="pl"><img src="{template}/images/ico-pl.png" alt=""></a>
                <a href="#googtrans(ru|pt)" data-type="pt"><img src="{template}/images/ico-pt.png" alt=""></a>
                <a href="#googtrans(ru|lv)" data-type="lv"><img src="{template}/images/ico-lv.png" alt=""></a>
                <a href="#googtrans(ru|es)" data-type="es"><img src="{template}/images/ico-es.png" alt=""></a>
                <a href="#googtrans(ru|el)" data-type="el"><img src="{template}/images/ico-el.png" alt=""></a>
            </div>
        </div>
Ну все же какой шаблон и тд.
Вот Путь к картинке : <img src="{template}/images/ico-el.png",{template} - тег для автоматического определения вашего шаблона что бы не писать вручную пути.
Можно поставить Мне Нравится,лучшая благодарность.
 

sQula

Администратор Innova Group
VIP
Сообщения
475
Розыгрыши
0
Реакции
261
Репутация
200
Баллы
249
Причем здесь скрипт? К гугл переводчику?



Что то типа этого :

Код:
<div class="languages">
        <script type="text/javascript">
            function googleTranslateElementInit() {
                new google.translate.TranslateElement({pageLanguage: 'ru', autoDisplay: false}, 'google_translate_element');
            }
        </script>
        <script type="text/javascript" src="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
        <div class="language-heading">Выбор языка:</div>
        <div class="language-list">
            <div class="language-current"><a href="#googtrans(ru|ru)"><img src="{template}/images/ico-ru.png" alt="">RU</a></div>
            <div class="language-dropdown">
                <a href="#googtrans(ru|ru)" data-type="ru" class="hidden"><img src="{template}/images/ico-ru.png" alt=""></a>
                <a href="#googtrans(ru|en)" data-type="en"><img src="{template}/images/ico-en.png" alt=""></a>
                <a href="#googtrans(ru|pl)" data-type="pl"><img src="{template}/images/ico-pl.png" alt=""></a>
                <a href="#googtrans(ru|pt)" data-type="pt"><img src="{template}/images/ico-pt.png" alt=""></a>
                <a href="#googtrans(ru|lv)" data-type="lv"><img src="{template}/images/ico-lv.png" alt=""></a>
                <a href="#googtrans(ru|es)" data-type="es"><img src="{template}/images/ico-es.png" alt=""></a>
                <a href="#googtrans(ru|el)" data-type="el"><img src="{template}/images/ico-el.png" alt=""></a>
            </div>
        </div>
Ну все же какой шаблон и тд.
Вот Путь к картинке : <img src="{template}/images/ico-el.png",{template} - тег для автоматического определения вашего шаблона что бы не писать вручную пути.
Можно поставить Мне Нравится,лучшая благодарность.
больше лайков, БОЛЬШЕЕЕ :D
 
  • Мне нравится
Реакции: kick

KRIVOSHEEV

Пляшущий с бубном
Местный
Сообщения
159
Розыгрыши
0
Реакции
27
Репутация
1
Баллы
203
Возьми YII2, TranslateBehavior + LocaleUrl и получишь, то что тебе нужно )
Ну и для статичных фраз, тоже есть доп. думаю найдешь )
 

I'm StreL

Пляшущий с бубном
Участник
Сообщения
59
Розыгрыши
0
Реакции
6
Репутация
1
Баллы
220
Он помоему юзает ghtweb.. Вообще, можно и самому сделать... Работа с сессиями, пишем класс где по стандарту дается русский язык.. затем пишем условия на выбор языка, опять же через сесси ($_SESSION['lang'] = "ru".. Ну и рекваеры соответственно в зависимости от языка.. например создать ru.php и en.php и там писать через массивы сообщения, а если по шаблону - то так же рекваеры -> tpl_ru / tpl_en
 

KRIVOSHEEV

Пляшущий с бубном
Местный
Сообщения
159
Розыгрыши
0
Реакции
27
Репутация
1
Баллы
203
Он помоему юзает ghtweb.. Вообще, можно и самому сделать... Работа с сессиями, пишем класс где по стандарту дается русский язык.. затем пишем условия на выбор языка, опять же через сесси ($_SESSION['lang'] = "ru".. Ну и рекваеры соответственно в зависимости от языка.. например создать ru.php и en.php и там писать через массивы сообщения, а если по шаблону - то так же рекваеры -> tpl_ru / tpl_en
Хардкор )
 

Rozhek

Пляшущий с бубном
Местный
Сообщения
198
Розыгрыши
2
Реакции
182
Репутация
610
Баллы
238
Насколько понял я, проблема не в переводе страниц, а в выводе кнопок переключения языка)
Для выбора языка можете использовать примерно такой скрипт. По умолчанию язык берется из стандартного атрибута хтмл страницы <html lang="en"> или <html lang="ru"> , разные ссылки на страницы в зависимости от языка вы предоставляете поисковикам. Далее при нажатии переключателя, язык записывается в cookies, страница перезагружается и сервер(эта часть зависит от выбранного вами движка) выдает en\ru страницу в зависимости от наличия кукиса lang.
Код:
$(document).ready(function(){
    if ($.cookie('lang') == null ){
        var theLanguage = $('html').attr('lang')
        // set cookie
        $.cookie('lang', theLanguage, {
                                expires: 5,
                                path: '/'
                        });
    };
    $("#page-wrap div.button").click(function(){
        $clicked = $(this);
        if($clicked.attr("id") == "en-button"){
            if($.cookie('lang') != "en") {
                $.cookie('lang', "en", {
                        expires: 5,
                        path: '/'
                });
                location.reload();
            }
        }else if($clicked.attr("id") == "rus-button"){
            if($.cookie('lang') != "ru"){
                $.cookie('lang', "ru", {
                        expires: 5,
                        path: '/'
                });
                location.reload();
            }
        }
    });
});
Сама кнопка переключения может выглядеть примерно так:
Код:
<div id="languages">
            <div id="page-wrap">
                <div id="rus-button" class="button">
                    <a href="javascript:void(0);"><img src="/site/images/ru-on.jpg" alt="rus" class="lang-off" /></a>
                </div>
                <div id="en-button" class="button">
                    <a href="javascript:void(0);"><img src="/site/images/en-on.jpg" alt="eng" class="lang-on" /></a>
                </div>
            </div>
        </div>
Если движка нет, или он самописный, можно выдавать разные html-ки. Если у вас какой-то движок с шаблонизатором, то можно подставлять фразы в шаблон из resource bundle с локалями. Тут уже зависит от ваших возможностей внедриться в серверный код)
 
Последнее редактирование:
  • Мне нравится
Реакции: kick

Logan22

Бывалый
Проверенный
Сообщения
889
Розыгрыши
0
Реакции
502
Репутация
1 036
Баллы
676
Работа с сессиями, пишем класс где по стандарту дается русский язык.
Зачем по дефолту русский, куда предпочтительнее выбор языка давать на откуп браузеру, то есть если язык браузера англ. то и язык сайта, англ. если русский то и русский язык браузера.
 

amkey

Патриарх всея ММО
Проверенный
Сообщения
315
Розыгрыши
0
Реакции
509
Репутация
761
Баллы
550
Че началось то? По-моему, уж как-то все углубились для простой задачи сайта ЛАДВЫ (где нет контента никакого, кроме кнопок СКАЧАТЬ и РЕГИСТРАЦИЯ, ну и донатик).

Поэтому, вариант с гуглом - идеально.
Форум, конечно же, переводить не нужно. Достаточно создать одну темы, типа "English Section".

Ня:
 

Padonok

Пляшущий с бубном
Местный
Сообщения
106
Розыгрыши
0
Реакции
24
Репутация
96
Баллы
239

Padonok

Пляшущий с бубном
Местный
Сообщения
106
Розыгрыши
0
Реакции
24
Репутация
96
Баллы
239

Desquire

Последний из атеистов
Партнер
Сообщения
1 263
Розыгрыши
1
Реакции
755
Репутация
1 102
Баллы
844
Все очень просто. Даже для св.
Делаете сайт на основном языке для вашего сервера.
Делате поддомен для нужного языка. там делаете уже все на нужном языке.
На основном шаблон с попапом и выбором языка.
Как итог - вы нечего не правите в цмс.
 

KRIVOSHEEV

Пляшущий с бубном
Местный
Сообщения
159
Розыгрыши
0
Реакции
27
Репутация
1
Баллы
203
Все очень просто. Даже для св.
Делаете сайт на основном языке для вашего сервера.
Делате поддомен для нужного языка. там делаете уже все на нужном языке.
На основном шаблон с попапом и выбором языка.
Как итог - вы нечего не правите в цмс.
Разве что, 2 разные бд, с 2 разными админками.
 

Desquire

Последний из атеистов
Партнер
Сообщения
1 263
Розыгрыши
1
Реакции
755
Репутация
1 102
Баллы
844
Сверху Снизу