Liferay 7 динамического контента с разными значениями для разных идентификаторов языка?
Я создал структуру Liferay 7 с полем "Объяснение".
Вот веб-контент, использующий эту структуру:
<?xml version="1.0"?>
<root available-locales="en_US" default-locale="en_US">
<dynamic-element name="Text" type="text_area" index-type="text" instance-id="vjsj">
<dynamic-content language-id="en_US">
<![CDATA[<p>Hello!</p>]]>
</dynamic-content>
</dynamic-element>
</root>
Я заметил, что четвертая строка имеет language-id="en_US"
приписывать.
Означает ли это, что я мог бы добавить локализации этого поля (через JournalArticle.setContent
), как показано ниже, и автоматическое отображение объяснения на французском языке для французских читателей в пользовательском интерфейсе Liferay?
<?xml version="1.0"?>
<root available-locales="en_US" default-locale="en_US">
<dynamic-element name="Text" type="text_area" index-type="text" instance-id="vjsj">
<dynamic-content language-id="en_US">
<![CDATA[<p>Hello!</p>]]>
</dynamic-content>
<dynamic-content language-id="fr_FR">
<![CDATA[<p>Bonjour !</p>]]>
</dynamic-content>
</dynamic-element>
</root>
В отличие от заголовка и резюме JournalArticle, я не вижу маленьких флажков ни в одном из полей, выпущенных структурой, поэтому я не уверен, поддерживается ли такой XML.
1 ответ
Вы не видите флаги, потому что функциональность переключателя обеспечивается переключателем языка большой статьи в верхней части окна редактирования. Если вы измените его там, вы должны получить отправленный вами XML-файл или что-то подобное. Обратите внимание, что вы не настраивали доступные локали в корне.
В общем, Liferay кодирует все языки в один XML. Указывает, какие языки содержатся в корне. Фактический перевод затем кодируется для каждого поля и языкового кода.