• Небольшая контора. Работают пользователи, говорящие на нескольких языках (3 основных).
    Теоретический вопрос. Допустим поставил WP (внутренний сайт для конторы — новости местные, расписание автобусов, меню в столовой ежедневное, общие документы на отпуск\больничный и тп и прочая хрень). Допустим зарегил пользователей, каждый из которых использует свой язык для интерфейса. Допустим есть 3 редактора, которые пишут одинаковые новости на 3х языках.
    Вопрос: как сделать так, чтобы при входе пользователя (и зная его язык) показывать ему на главной (ну и в остальных разделах) только новости, которые на его языке?

    По умолчанию получается так, что когда пользователи входят, они видят все новости на всех языках набранные. Как убрать не нужные для пользователя, без ввода дополнительных кнопок\ссылок «переключить язык» и тд. Т.е. вошёл пользователь с языком Ru — видит только новости на Русском во всех разделах (и интерфейс сайта Ru), вошел En — аналогично, только все на Английском.
    Интерфейс вроде как переводится автоматом, а с записями как быть (фильтрация). Может плагин е какой (желательно без них: ясно, что можно поставить что-то типа advanced field и маркировать каждую запись например номером языка, отдельный вопрос как фильтровать вывод — ну тоже просто вроде)? Или доработка в коде небольшая (тыкнуть, где почитать или пример).
    Может уже есть какие встроенные средства для таких вещей?

    Спасиб.

    • Тема изменена 7 лет, 10 месяцев назад пользователем ☭Gu.
    • Тема изменена 7 лет, 10 месяцев назад пользователем ☭Gu.
Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Вопрос: как сделать так, чтобы при входе пользователя (и зная его язык) показывать ему на главной (ну и в остальных разделах) только новости, которые на его языке?

    В плагинах мультиязычности есть настройка типа «определять язык юзер-агента».

    Спасибо за ответ.

    Это в каких например?

    Код.

    А в стд. реализации как-то можно выборку сделать из БД пользователей (ну или текущего пользователя), какой у него язык и (например все записи уже маркированы языком, например полем записи в БД Lang: 0=En;1=Ru;2..) на главной для него только их вывести (фильтр вставить в functions.php)? Любая стд. схема оформления для текущей версии WP как пример?
    Набросок кода хотя-бы теоретический нужен, типа:

    Case UserGetLang() of
    0: ShowRec(0);
    1: ShowRec(1);

    n: ShowRec(n);
    end elseif ShowAll();

    где
    ShowRec(x) будет примерно

    result=’Select * from WpDB.News where Lang is ‘+str(x);
    Show (result);

    • Ответ изменён 7 лет, 10 месяцев назад пользователем ☭Gu.
    • Ответ изменён 7 лет, 10 месяцев назад пользователем ☭Gu.
    • Ответ изменён 7 лет, 10 месяцев назад пользователем ☭Gu.

    Это в каких например?

    Да во всех наверное 🙂 https://wordpress.org/plugins/polylang/, https://ru.wordpress.org/plugins/qtranslate-x/

    По остальному ничего не понял. Но чую опять ненужные велосипеды изобретаете 🙂
    Поставьте плагин и все Ваши проблемы уйдут.

    1. поправил.
    2. нравятся ненужные велосипеды 🙂
    3. плагины не нравятся, разве что как пример

    за ссылки спасибо, гляну

    • Ответ изменён 7 лет, 10 месяцев назад пользователем ☭Gu.
Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Multi Lang User» закрыта для новых ответов.