Ответы пользователя по тегу Веб-разработка
  • Каким образом сайты делают многоязычными?

    @acwartz
    angular, java, chrome extensions, delphi
    Какие существуют общепринятые приемы для переключения языка на сайте?

    Вернее сказать подходы?

    Локализация может быть статическая и динамическая.
    Статическая:
    полностью весь сайт локализован на сервере и живет себе копиями в какой-то папке site.com/
    на которую ссылается поддомен либо же часть ссылки перенаправляет туда site.com/ru/content... ../by/content и т.д. или поддоменами тоже самое:
    ru.site.com, by,site,com, или com.by, .com.ru как у гугла.

    Очень геморно это поддерживать, т.к. руками придется переносить изменения текста из русского во все остальные варианты локализации.

    Динамическая, опять же частичная и полная.
    Частичная:
    сервер отдает общие части сайта в запрошенном локализованном виде из url или поддомена или как угодно . Динамический контент версионируется по локализации. (В википедии так, общая часть хоть на шумерском, статьи можно переключать по языкам но они будут различаться с оригиналом).

    Полностью динамическая локализация:
    т.е. есть некий ru.json, en.json которые загружаются заранее/по запросу и оттуда берутся человеко-понятные слова и расставляются по всему сайту прямо в браузере по мере хождения по сайтам (современные SPA так работают), некоторые так не работают и надо собирать 2-6 вариантов локали сайта и хранить их в разных папках при каждом изменении исх. кода (так старый ангуляр работал, да и нынешний ничем не лучше без ngx-translate),
    и собственно явно переключаешься по ним обращаясь к разным папкам-локалям.

    Контент... самое удобное - версионирование по языку и контенту (как это в википедии сделано).
    Где есть начальная статья (пускай статья, контент короче), написанный на русском, кто-то переводит его на английский, потом на китайский и все это хранится в БД, и версионируется уже отдельно по изменениям.
    Естественно новое в русском не переместится в английский т.к. английская версия перестанет быть читабельной да и подача материала может быть иная.

    Является ли нормой создание нескольких виртуальных хостов под каждый язык?

    почему нет. url-part может быть просто словом а уж веб-сервер разберется откуда реально взять информацию в нужной локали.
    Ответ написан
  • Как сделать подобный эффект?

    @acwartz
    angular, java, chrome extensions, delphi
    Почитать комментарии в boundle.js?
    scrollmagic.io же.
    Ответ написан
  • Как лучше всего решать проблемы с тем когда контент страницы заканчивается, а меню слева еще нет?

    @acwartz
    angular, java, chrome extensions, delphi
    Меню не меньше блока контента, если меню больше - появляется скролл по вертикали в блоке меню.
    Ответ написан