Я только что заметил на своём форуме, что локализация описаний страниц частных категорий работает не так, как ожидалось.
Действительно, даже если все описания категорий переведены на все языки и должным образом добавлены в настройки категории, смена языка оставляет описание на исходном языке (в моём случае — на английском), вместо того чтобы использовать его перевод.
Следует отметить, что проблема, которую я выявил, касается только:
Частных категорий — обычные/публичные категории работают хорошо, как и ожидалось.
Описания категории — закрепленные темы и другие элементы работают так, как я ожидал.
Кто-нибудь сталкивался с тем же? Что я могу сделать, чтобы это исправить?
Большое спасибо за вашу помощь и поддержку,
С наилучшими пожеланиями
Я понимаю и извиняюсь, если не предоставил достаточной информации.
Проблема, с которой я столкнулся, находится в содержимом баннера категории для частных категорий (у меня баннер категории настроен как компонент темы). Когда я захожу на страницы каждой категории, баннер категории корректно переводится для публичных категорий (включая заголовок и описание), однако для частных категорий язык остается английским независимо от выбранного пользователем локаля.
Я не уверен, какие именно настройки у меня могут вызывать это.
Добавлю к своим предыдущим комментариям: один из способов «воспроизвести» эту проблему — протестировать её на одной из частных категорий Discourse Meta (например, Staff или любой другой). Порядок действий:
Перейдите в любую частную категорию, к которой у вас есть доступ.
Убедитесь, что для неё создано несколько переводов (например, «Редактировать эту категорию» > вкладка «Локализация» > основной язык названия и описания категории (в моём случае установлен «Английский»), а затем задайте локализацию для всех поддерживаемых языков).
Вернитесь на главную страницу этой частной категории (где вы видите баннер категории с заголовком и описанием).
Используйте переключатель языка в правом верхнем углу, чтобы изменить язык. В моём случае он остаётся на английском, независимо от выбранного языка.
Эта проблема касается только частных категорий в моём случае. Публичные категории работают как положено.
Привет! Я не могу воспроизвести проблему даже в служебных категориях Meta, не говоря уже о самом компоненте темы.
Полагаю, может быть какая-то другая проблема.
Не мог бы ты проверить это с помощью запроса в Data Explorer?
SELECT
c.locale AS cat_locale,
cl.locale AS loc_locale,
c.name AS cat_name,
cl.name AS loc_name,
c.description AS cat_description,
cl.description AS loc_description
FROM categories c
LEFT JOIN category_localizations cl
ON cl.category_id = c.id
WHERE c.read_restricted = TRUE
ORDER BY c.id, cl.locale
И ещё один вопрос: ты используешь последние версии ядра и компонента темы?
Привет Большое спасибо за помощь, тот факт, что вы не смогли воспроизвести проблему, заставил меня глубже задуматься, что именно идёт не так с моей стороны.
Затем я попробовал кое-что совершенно неожиданное: (i) зашёл в настройки локализации моих частных категорий (где заголовок/описание переведены на различные языки); (ii) удалил одно слово/перефразировал одно случайное предложение, чтобы как-то «принудительно» внести изменение; (iii) сохранил изменения… и вот магия, проблема исчезла.
Я помню, что в какой-то момент был выпуск Discourse, включавший что-то, связанное с переводами, с рекомендацией выполнить команду «rake» для распространения изменений (забыл точный контекст). Поскольку мой экземпляр довольно новый, с ограниченным количеством категорий, и я стараюсь избегать работы с командной строкой, когда это возможно, я тогда решил вручную обновить каждую категорию по отдельности (вместо автоматического выполнения rake для всех), и я, должно быть, забыл сделать это для частных категорий