Использование тегов MODX внутри @INLINE-чанков pdoTools
        Многие знают, что в pdoTools в качестве шаблона вывода можно указывать @INLINE-код, чтобы не создавать лишних сущностей.
Некоторые знают, что в таких конструкциях нельзя вызывать сниппеты, не работают фильтры ввода-вывода. А в документации про это даже картинка саркастическая есть.
Хочу раскрыть небольшую тайну, как можно это ограничение иногда обойти… Подробности под катом :-Р
Итак, секрет: pdoTools конвертирует двойные фигурные скобки в квадратные. А значит, такой код будет работать как миленький:
Единственное — вложенные обратные кавычки все портят, поэтому фильтры вывода и сниппеты могут вызываться только без параметров.
    
    
                                                                                
            [[!pdoResources?
    &tpl=`@INLINE <li>[[+pagetitle]]</li>`
]]Некоторые знают, что в таких конструкциях нельзя вызывать сниппеты, не работают фильтры ввода-вывода. А в документации про это даже картинка саркастическая есть.
Хочу раскрыть небольшую тайну, как можно это ограничение иногда обойти… Подробности под катом :-Р
Итак, секрет: pdoTools конвертирует двойные фигурные скобки в квадратные. А значит, такой код будет работать как миленький:
[[pdoResources?
    &tpl=`@INLINE <h3><a href="[[+uri]]">[[+pagetitle]]</a> - {{!year}}</h3>
          <p>{{+content:striptags:ellipsis}}</p>`
    &includeContent=`1`
  ]]Единственное — вложенные обратные кавычки все портят, поэтому фильтры вывода и сниппеты могут вызываться только без параметров.
Комментарии: 12
                This is magic! >:D            
                    
                В принципе, если все параметры вложенных сниппетов запихать в набор параметров и вызывать с ним, получится добавить все, что угодно?
Только блог для тикета по идее должен быть «Готовые решения».
                    Только блог для тикета по идее должен быть «Готовые решения».
                Да, наборы параметров, думаю, — это выход.            
                    Единственное — вложенные обратные кавычки все портят, поэтому фильтры вывода и сниппеты могут вызываться только без параметров.Вообще-то нет.
У меня всё работает и со вложенными ковычками, только что проверил на последних версиях MODX и pdoTools.
                То есть, вот так все нормально выводит?
                    [[pdoResources?
    &tpl=`@INLINE <h3><a href="[[+uri]]">{{+pagetitle:ellipsis=`50`}}</a></h3>
]]UPD. Даже подсветка синтаксиса споткнулась))            
                Потому что у тебя там ковычки в конце не хватает. А так да, всё работает:
                    [[!pdoResources?
	&parents=`0`
	&tpl=`@INLINE <p><a href="{{+uri}}">{{+pagetitle:ellipsis=`5`}}</p>`
]]            
                Здорово! Теперь лишних чанков хоть можно не плодить из-за одного модификатора MODX.            
                    
                при таком вызове скорее всего нужно забыть про fastMode?            
                    
                Если ты используешь сложные теги с модификаторами — конечно. Если же нет, то fastMode будет работать как обычно, независимо от типа чанка.            
                    
                А вот такое уже выводить не хочет. Есть варианты обойти?
                    {{+tv.image:phpthumbon=`w=75`}}            {$_pls['tv.image'] | phpthumbon : "w=75"}            
                Спасибо!            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.