Kentico получить сайт культуры из макроса - PullRequest
0 голосов
/ 04 июня 2018

Я использую Kentico 11 и хотел бы получить доступную культуру сайта для текущего сайта с помощью макроса.

Я пытаюсь сделать это из источника данных поля Тип страницы - Macro Expression.Я установил тип данных «Текст», а «Контроль формы» - «Выбор нескольких».

Причина, по которой я это делаю, заключается в том, что наш клиент запросил, чтобы некоторые продукты были доступны только для определенных культур сайтов (они используют культуру сайта).как места).

Ответы [ 2 ]

0 голосов
/ 04 июня 2018

Да.Вы можете {%SiteContext.CurrentSite.OtherBindings.CultureSites.ItemsAsFields.CultureID%}.Это даст вам список CultureID, доступных для вашего сайта.Чтобы изучить доступные макросы и проверить их, я предлагаю вам перейти на system->macros->console

. Далее будет выведен CultureID, CultureCode, CultureName: {%SiteContext.CurrentSite.OtherBindings.CultureSites.Transform("{#CultureID#} {#Parent.CodeName#} {#Parent.CultureName#}<br>")%}

0 голосов
/ 04 июня 2018

Эту ситуацию лучше обрабатывать с помощью пользовательского запроса SQL в CMS_SiteCulture и объединения в таблицу CMS_Culture.

Макросы "из коробки" не предоставляют прямой доступ к этой привязке, и вам придется прибегнуть к пользовательскому макросу, чтобы получить правильный список (массив) элементов обратно.

...