Вопрос

Я создал объект Link DataObject, чтобы пользователи могли автоматически создавать ссылку на другую страницу во Frontend.Я использую два языка в интерфейсе, немецкий и английский.Во всплывающем окне я создаю раскрывающийся список для выбора страниц

родовое слово

Но я вижу только немецкие страницы в раскрывающемся списке.Пытался изменить язык администратора на английский, но без изменений.Кажется, что база данных возвращает только немецкие страницы ...

Есть подсказка?

Это было полезно?

Решение

Изменить: я еще немного покопался и узнал, как это сделать.Перед получением объектов SiteTree необходимо вызвать disable_locale_filter:

родовое слово

Затем вызовите "enable_locale_filter" после их получения:

родовое слово

Это другие подходы, которые я оставлю здесь, поскольку считаю, что они все еще полезны ...

Я считаю, что вам, возможно, придется сделать это с помощью Translatable :: get_by_locale () - я предполагаю, что вы хотите, чтобы люди могли выбирать страницу для ссылки на своем языке ??

Возможно, что-то вроде этого?

родовое слово

Изменить: см. комментарии ниже, но другой вариант - использовать функцию Translatable :: get_current_locale (), чтобы найти все страницы в дереве сайта для этого языкового стандарта ... если пользователь просматривает английскую страницу, необходимо установить языковой стандартна английский и т. д.

родовое слово

Вы также можете получить языковой стандарт с текущей страницы, например

родовое слово
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top