Kentico — Добавить CurrentSite в инструкцию Where

#kentico

#kentico

Вопрос:

У меня есть повторитель с пользовательским запросом. В настоящее время существует условие WHERE, подобное этому PracticeAreas = '{%CurrentDocument.PracticeAreas#%}' and NodeID != {%CurrentDocument.NodeID#%}

Цель состоит в том, чтобы фильтровать и показывать только документы, которые имеют те же области применения, что и текущий документ, и это работает нормально. Теперь, в дополнение к практическим областям, я также хочу фильтровать и показывать только документы на текущем сайте. Как мне это сделать? Спасибо!

Ответ №1:

Правильный синтаксис для вашего условия WHERE был бы:

NodeSiteID = {%CurrentSite.SiteID%|(default)1}

Вы всегда хотите также предоставить какое-то значение по умолчанию, чтобы гарантировать, что ваш запрос безопасен и функционирует в случае, если значение не указано.

Ответ №2:

Немного зависит от характера вашего запроса, но для извлечения и фильтрации сайта вам понадобится SiteID. Для этого вы также можете использовать макрос, так что что-то вроде:

SiteID = {% CurrentSite.ИДЕНТИФИКАТОР #%}