Pathologic
плейсхолдеры можно выводить только после того как сниппет выполнится
Anonymous
Сниппет работает и выводит {{ runSnippet('DocLister',{ 'tvPrefix':'', 'display':'2', 'prepare':'imgformat', 'summary':'notags,len:40', 'tvImg':'image', 'phpthumb':'w=500,h=350,zc=1,bg=ffffff', 'depth':'0', 'parents':'5', 'dateFormat':'%d.%m.%Y', 'dateSource':'createdon', 'tvList':'image', 'paginate':'pages', 'id':'cat', 'pageLimit':'1', 'pageAdjacents':'1', 'tpl':'@T_FILE:chunks/post', 'noneTPL':'@T_CODE:<div class="col-12"> <div class="alert alert-success" role="alert"> <span class="alert-heading">В этом разделе еще нет публикацмй!</span> </div> </div>', 'TplPrevP':'@T_CODE: <li><a href="{{ data.link }}" rel="prev"><i class="fa fa-angle-left"></i></a></li>', 'TplPage':'@T_CODE: <li><a href="{{ data.link }}" class="page">{{ data.num }}</a></li>', 'TplCurrentPage':'@T_CODE: <li class="active"><a>{{ data.num }}</a></li>', 'TplNextP':'@T_CODE: <li><a href="{{ data.link }}" rel="next"><i class="fa fa-angle-right"></i></a></li>', 'TplDotsPage':'@T_CODE:<li><a href="{{ data.link }}" class="page"> ... </a></li>', 'TplWrapPaginate':'@T_CODE: <ul class="pagination">{{ data.wrap }}</ul>' }) | raw }}
Pathologic
опять начинается
Pathologic
а не работает что
Pathologic
где код
Aliaksandr
А вызывал бы сниппет в контроллере - плейсхолдеры были бы доступны в любом месте шаблона - хоть до, хоть после вывода ))
Pathologic
ну и я уже вижу следующий вопрос - почему не работают ссылки
Pathologic
или для пагинации там link
Anonymous
пагинация вызывается после сниппета
Aliaksandr
А это tvImg давно появилось? Впервые вижу ))
Aliaksandr
Давно доков не читал ))
Anonymous
это от препаре
Anonymous
он работает, картинки выводятся
Aliaksandr
Ааа, ну ясно, я думал что-то новое )
Anonymous
По идее должно через data, в чанке все прописано через дата и все работает, а здесь не хочет. И такая же фигня с плейсхолдером crumbs.wrap в сниппете DLCrumbs. В DLMenu все отработало отлично.
Pathologic
а чего оно должно работать не в чанке через data
Pathologic
это написано где-то?
Pathologic
{% block content %} <br>{{ runSnippet('DocLister', { 'parents': 0, 'id': 'cat', 'display': 1, 'paginate': 'pages' }) }} <br> {{ modx.getPlaceholder('cat.pages') | raw }}<br> {{ plh['cat.pages'] | raw }} {% endblock %}
Pathologic
вот у меня все работает
Anonymous
хм, шаблоны стилизации убрал, тоже заработало
Pathologic
с обычными плейсхолдерами оно тоже заработает
Pathologic
там вроде str_replace в пагинаторе происходит
Pathologic
там где пагинация
Pathologic
да оно всюду будет работать с обычными
Pathologic
для чего там шаблонизатор
Pathologic
особенно для noneTPL
Anonymous
ну, не знаю, был что-то пропистил когда перписывал, и оно ничего не вывело, отображалось текстом
Anonymous
а вообще попробую, но [+cat.pages+] не работает, уже попробовал
Pathologic
я про чанки говорю
Anonymous
с чанками буду разбираться, почему с ними не хочет работать пагинация
Pathologic
я уже посмотрел
Pathologic
в пагинации действительно используются чанки
Pathologic
но не так как всюду
Pathologic
там не будет работать твиг
Anonymous
и ч.д.
Pathologic
не исползовать там твиг
Pathologic
очевидно же, что он там не нужен
Anonymous
для кого как ))
Pathologic
там не будет работать вообще никакой шаблонизатор
Pathologic
потому что в конечном итоге пагинация сводится к str_replace
Pathologic
ну и для чего там шаблонизатор
Pathologic
нет смысла даже тратить время на исправление этого
Anonymous
спасибо, отбой
Aliaksandr
Шаблонизация пагинации в вызове - одна из самых маразматичных затей. Выноси ее в кастомный конфиг и используй его по всему сайту, а не вот это всё копирование))
Pathologic
я вообще стараюсь ее не шаблонизировать, потому что это надо смотреть как параметры называются
Pathologic
но общее направление мыслей @paic уже понятно
Pathologic
вместо @CODE:[+pagetitle+] теперь будет гордое @T_CODE:{{ data.pagetitle }}
Aliaksandr
Ну часто приходится и проще один раз в конфиге прописать, чем таскать по всему сайту. Она ж в 99.5% одинаковая везде
Aliaksandr
https://github.com/AgelxNash/DocLister/blob/master/assets/snippets/DocLister/config/core/paginate.json
Aliaksandr
Там и параметры все названы, скопировал в папку custom, один раз отмучался и живешь спокойно по всему сайту))
Pathologic
у некоторых так все в конфигах
Pathologic
если на сайте сто конфигов, то делал его @Serg_64j
Aliaksandr
Ну я его обычно только для пагинации и использую, хотя там вроде ж можно и несколько через запятую, типа пагинацию отдельно вынести на весь сайт и забыть
Aliaksandr
У него для формлистера наверно сто конфигов, чтоб аяксом удобнее было отправлять
Pathologic
а какая связь
Pathologic
в чем удобство
Aliaksandr
Ну отправил, по айди формы выцепил конфиг и не надо прописывать опять параметры и на отправке и на приемке
Pathologic
как-то неочевидно, разве что код красивее
Aliaksandr
В вызове остается formid и конфиг, красиво и удобно, как по мне ))
Aliaksandr
Просто я не использую формлистер 😎🙃😁😁
Pathologic
но в json нужно следить за запятыми и кавычками
Pathologic
ну я уже понял что ты используешь сниппеты в тв и modxParser
Aliaksandr
Не надо мне приписывать того, что я не делаю, я же говорил 😁
Aliaksandr
Я как профессионал разруливаю хотелки заказчика и самостоятельные проделки сеошников и предыдущих разработчиков чтоб все работало с минимальными издержками для меня 😁 just business. Причем всегда озвучиваю, что мне не нравится и несколько вариантов развития событий от бюджетного до элитного 😁
Pathologic
а формлистер ты используешь вместе с коммерс 😸
Pathologic
хотя от тебя можно ожидать и использование шопкипера
Aliaksandr
Могу даже предложить полностью переписать с твига на блейд, если будет финансирование ))
Pathologic
там где будет финансирование, там перепишут на битрикс
Aliaksandr
Да я просто не люблю усложнять жизнь посетителя сайта излишними валидациями - потому обычно хватает проверки на пустоту обязательных полей и мыла на js. Смысла в формлистере для такого особо нет, отправил аяксом да забыл
Aliaksandr
Заодно никаких проблем со сбросом селектов, чекбоксов и потерей файлов из поля file ))
Pathologic
нужно проверять и на сервере тоже, а то ты не профессионал
Pathologic
а в формлистере и нет проблем со сбросом селектов и чекбоксов
Aliaksandr
Для отправки почты хватит на сервере какого-то htmlspecialchars 😁
Aliaksandr
Короче, если вынуждают использовать формлистер - использую, если нет - то 10 строк js и 10 строк php копипастом хватает чтоб отправить эту несчастную форму обратной связи
Aliaksandr
А насчет шопкипере, так фигня полная, я наверно второй после миши коммерс на 1.4 поставил и вообще первый на 2.0, когда все писали еще в чате, что он там не работает
Aliaksandr
Не надо меня тут пытаться ортодоксом выставлять, я экспериментатор еще тот ))
Pathologic
вот и поэкспериментируешь со сниппетными тв в контроллерах, когда я выпилю modxParser 🙃
Aliaksandr
Впилю в пакет evo3_start еще одну блейдо-директиву, делов то ))
Aliaksandr
Дебаты по эво не прекращаются и во сне ))