Как выводить ID в зависимости от контекста?
Подскажите как правильно организовать меню? Мне требуется указать родительский ресурс, но на английской версии у родителя другой id следовательно выводится русское меню на англ контексте. Как решить эту проблему? Можно как-то менять? И еще вопрос, можно ли через fenom проверить, является ли исходный ресурс контейнером или нет?
Комментарии: 2
Мне требуется указать родительский ресурс, но на английской версии у родителя другой id следовательно выводится русское меню на англ контексте.
{* В зависимости от контекста указываем нужного родителя *}
{if $_modx->context.key == 'web'}
{set $parent = 12}
{else}
{set $parent = 12}
{/if}
{* в параметрах вызова указываем переменную $parent: *}
'parent' => $parent,
можно ли через fenom проверить, является ли исходный ресурс контейнером или нет?конечно, если исходный имеется ввиду текущий, то:
{if $_modx->resource.isfolder == 1}
контейнер
{else}
не контейнер
{/if}
Если в чанке меню, то просто $isfolder
Если языки на контекстах, то проще создать свой параметр в настройках контекста.
Допустим, ID каталога в русской версии — 20, а в английской — 50.
Создаете параметр, называете его page_catalog. У русского контекста ставите значение 20, у английского — 50. Тогда можно не делать условия, а просто использовать тег:
Допустим, ID каталога в русской версии — 20, а в английской — 50.
Создаете параметр, называете его page_catalog. У русского контекста ставите значение 20, у английского — 50. Тогда можно не делать условия, а просто использовать тег:
&parents=`[[++page_parent]]`
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.