Условие вызова pdoMenu
        Добрый день
Подскажите а как правильно создать условие?
    
    
                                                                                
            Подскажите а как правильно создать условие?
{'!pdoMenu' | snippet : [
    {if 'limit' > 5 && 'hereClass'}
        'parents' => '7',
        'level' => '1',
        'offset' => '1',
        'limit' => '5',
        'hereClass' => 'active',
        'tplOuter' => '@INLINE <ul class="topMenu_items_prod">{$wrapper}</ul>',
        'tpl' => '@INLINE <li><a {$classes} href="{$link}">{$menutitle}</a></li>'
    {else}
        'parents' => '7',
        'level' => '1',
        'limit' => '5',
        'hereClass' => 'active',
        'tplOuter' => '@INLINE <ul class="topMenu_items_prod">{$wrapper}</ul>',
        'tpl' => '@INLINE <li><a {$classes} href="{$link}">{$menutitle}</a></li>'
    {/if}
]}Комментарии: 13
                Помогите с синтаксисом
                    {'!pdoMenu' | snippet : [
        'parents' => '7',
        'level' => '1',
        'limit' => '5',
        'offset' => '{if 'limit' > 5} offset = '1' {/if}', как тут правильно составить?
        'hereClass' => 'active',
        'tplOuter' => '@INLINE <ul class="topMenu_items_prod">{$wrapper}</ul>',
        'tpl' => '@INLINE <li><a {$classes} href="{$link}">{$menutitle}</a></li>'
]}
                Не совсем понятно, что вы хотите этим условием добиться            
                    
                Не могу придумать адекватное условие к выборке, и еще правильно его записать.
Есть меню, всего 5 элементов, больше нельзя во фронте, а всего в родителе может быть сколько угодно.
Есть переключение по страницам туда и сюда (pdoNeighbors)
Начальное условие:
limit => 5
1 2 3 4 5 (6, 7, 8,… эти пункты отключены к показу, тк лимит = 5)
— если активный 6, тогда нужно 2 3 4 5 6,
— если 7 тогда нужно 3 4 5 6 7
и так далее.
Есть какие нибудь предложения?))
                    Есть меню, всего 5 элементов, больше нельзя во фронте, а всего в родителе может быть сколько угодно.
Есть переключение по страницам туда и сюда (pdoNeighbors)
Начальное условие:
limit => 5
1 2 3 4 5 (6, 7, 8,… эти пункты отключены к показу, тк лимит = 5)
— если активный 6, тогда нужно 2 3 4 5 6,
— если 7 тогда нужно 3 4 5 6 7
и так далее.
Есть какие нибудь предложения?))
{var $limit = 5}
{var $offset = $limit > 5 ? '1' : '0'} Если лимит больше 5, тогда вернуть 1, иначе 0
{'!pdoMenu' | snippet : [
        'parents' => '7',
        'level' => '1',
        'limit' => $limit,
        'offset' => $offset,
        'hereClass' => 'active',
        'tplOuter' => '@INLINE <ul class="topMenu_items_prod">{$wrapper}</ul>',
        'tpl' => '@INLINE <li><a {$classes} href="{$link}">{$menutitle}</a></li>'
]}
                Максим спасибо большое что ответили, но данная конструкция не работает.
Я так думаю что по $limit фильтрация работать не будет, она получается всегда = 5.
Если я меняю {var $limit = 6} тогда срабатывает условие!
                    Я так думаю что по $limit фильтрация работать не будет, она получается всегда = 5.
Если я меняю {var $limit = 6} тогда срабатывает условие!
                Я думаю проще сделать на JS. 
Выводить все, считать количество списков и просто показывать нужные относительно активного, а не нужные display:none.
                    Выводить все, считать количество списков и просто показывать нужные относительно активного, а не нужные display:none.
                Так вы значение лимита меняйте! Его же можно из GET ловить. Это достаточно гибкое решение и думаю что можно приспособить. Но не понимаю картины в целом — я ничего больше посоветовать не могу.((((            
                    
                Ну в целом картина простая
Есть категория например «товары» и в ней товар 1,2,3,4,5,6,7… и т.д.
На странице вывода товара есть горизонтальное меню.
Всего в это меню помещается 5 элементов, больше не влезает из за особенностей верстки.
Вот не могу найти решение:
Если например активный пункт 1,2,3,4,5, то все гуд, при условии Limit=5, они отображаются и какой то из них подсвечивается активный, а если например выбран «товары/товар6» то он в меню не отображается, по прежнему пункты 1,2,3,4,5.
Вот нужно что бы:
Если активный пункт 6, то выводить меню из 2,3,4,5,6
Если активный пункт 7, то выводить меню из 3,4,5,6,7
Если активный пункт 8 то выводить меню из 4,5,6,7,8
И так далее.
Понимаете?
                    Есть категория например «товары» и в ней товар 1,2,3,4,5,6,7… и т.д.
На странице вывода товара есть горизонтальное меню.
Всего в это меню помещается 5 элементов, больше не влезает из за особенностей верстки.
Вот не могу найти решение:
Если например активный пункт 1,2,3,4,5, то все гуд, при условии Limit=5, они отображаются и какой то из них подсвечивается активный, а если например выбран «товары/товар6» то он в меню не отображается, по прежнему пункты 1,2,3,4,5.
Вот нужно что бы:
Если активный пункт 6, то выводить меню из 2,3,4,5,6
Если активный пункт 7, то выводить меню из 3,4,5,6,7
Если активный пункт 8 то выводить меню из 4,5,6,7,8
И так далее.
Понимаете?
                Другое объяснение:
т.е значение offset = общее кол-во ($coutn) — $limit, но какое значение в pdoMenu несет в себе общее количество, countChildren? это не правильное мышление            
                    Если активный какой то из 1,2,3,4,5, то
{'!pdoMenu' | snippet : [
                    'parents' => '7',
                    'limit' => '5'
]}Если активный какой то из 6 то
{'!pdoMenu' | snippet : [
                    'parents' => '7',
                    'limit' => '5',
                    'offset' => '1'
]}Если активный какой то из 7 то
{'!pdoMenu' | snippet : [
                    'parents' => '7',
                    'limit' => '5',
                    'offset' => '2'
]}Если активный какой то из 8 то
{'!pdoMenu' | snippet : [
                    'parents' => '7',
                    'limit' => '5',
                    'offset' => '3'
]}
                А каким образом посетитель перейдет на товар 6, если в меню видны изначально только 1,2,3,4,5?            
                    
                Есть переключение по страницам туда и сюда (pdoNeighbors). На главной странице будут представлены все товары, может с главной туда попасть.            
                    
                Мне пришла в голову такая реализация.
Поскольку мы на странице товара, то идентификатор активного товара нам известен -его можно получить и на феноме и в самописном сниппете.
Нужно перед вызовом pdoMenu разместить вызов своего сниппета, который получит идентификатор текущего товара, получит идентификаторы двух товаров до него и двух после (я думаю логику можно будет подсмотреть в реализации pdoNeighbors) и вернет список из пяти айдишников — два айдишника до, айдишник текущего товара, два айдишника после.
Это строку скормить pdoMenu в параметр resources. И будет красиво, ваш товар активный будет всегда по центру и по два товара побокам.
                    Поскольку мы на странице товара, то идентификатор активного товара нам известен -его можно получить и на феноме и в самописном сниппете.
Нужно перед вызовом pdoMenu разместить вызов своего сниппета, который получит идентификатор текущего товара, получит идентификаторы двух товаров до него и двух после (я думаю логику можно будет подсмотреть в реализации pdoNeighbors) и вернет список из пяти айдишников — два айдишника до, айдишник текущего товара, два айдишника после.
Это строку скормить pdoMenu в параметр resources. И будет красиво, ваш товар активный будет всегда по центру и по два товара побокам.
                Круто! Да можно подумать в данном направлении) 
Спасибо, буду мучить)
                    Спасибо, буду мучить)
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                    
             
             
                    
                    
                





