Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #3Доработки библиотеки pdoTools
Пламенный привет всем модыксерам!
Хочу анонсировать начало работ по pdoTools. У себя в тг-канале я уже давно озвучивал доработки, которые планировал добавить в pdoTools. И некоторые я уже реализовал на работе. Плюс накопилось много issues и PR на гитхабе, которые копятся и копятся. Уже большой ком накопился. Кто-то должен это остановить. Пора расчехлять камни силы.
Хочу анонсировать начало работ по pdoTools. У себя в тг-канале я уже давно озвучивал доработки, которые планировал добавить в pdoTools. И некоторые я уже реализовал на работе. Плюс накопилось много issues и PR на гитхабе, которые копятся и копятся. Уже большой ком накопился. Кто-то должен это остановить. Пора расчехлять камни силы.
Сравнение шаблонизаторов MODX, Fenom и Smarty
В очередной раз прочитав утверждение, что Fenom быстрее стандартного парсера, решил провести указанный в документации pdoTools тест, чтобы расставить все точки над и. Но решил сделать это не отдельными скриптами, как в документации, а практичнее — через сниппет, который будет вызыватся на странице. Плюс добавил для сравнения шаблонизатор Smarty из ZoomX. Так вот, у меня таки есть шо вам сказать.
Кэширование элементов в ZoomX
ZoomX постепенно начинает набирать популярность. В связи с чем возникает ряд вопросов. Один из которых — кэширование элементов в шаблонизаторе Smarty. В принципе, по документации не сложно разобраться. Но, конечно, модыксерам хотелось бы работать так, как они привыкли. В этом плане Fenom из pdoTools реализован именно по этому принципу — для запрета кэширования в названии элемента указывается восклицательный знак. Всё привычно. Но работает не всегда.
oneBooking. Последние новости
Друзья, привет! У меня есть свежая информация из первоисточника по компоненту oneBooking. С разрешения автора компонента выкладываю ответ на вопрос «куда пропал компонент oneBooking» из магазина дополнений modstore.pro. Орфография и пунктуация автора сохранены. ))
[ZoomX] Файловые плагины, markdown, кэширование сниппетов
Привет, друзья! Наконец я выпустил новую версию ZoomX. Эта версия минорная, но в ней много заслуживающего внимания. Расскажу о самом интересном:
- Файловые плагины.
- Модификатор markdown.
- Механизм кэширования сниппетов.
- Короткие имена контроллеров в роутах.
- Упрощённый вариант переадресации в роутах.
- Событие «OnBeforeRouteProcess».
- Доработана функция jsonx.
- Функционал контейнера.
pdoTools3 для MODX3
Друзья!
Как вы все знаете (или почти все), @Mark Hamstra взял быка за рога и своим решением утвердил график выхода MODX3:
Теперь по теме. Многие говорили, что для тестирования MODX3 им нужен адаптированный pdoTools, так как они ведут разработку исключительно с ним. Пару дней я назад выпустил новую версию этой библиотеки, предназначенную только для MODX3.
Как вы все знаете (или почти все), @Mark Hamstra взял быка за рога и своим решением утвердил график выхода MODX3:
- 3.0.0-alpha3 – 27 октября
- 3.0.0-beta1 – 8 ноября
- 3.0.0-beta2 – 22 ноября
- 3.0.0-rc1 – 6 января 2022
- 3.0.0-rc2 – 17 января
- 3.0.0-pl – 31 января
Теперь по теме. Многие говорили, что для тестирования MODX3 им нужен адаптированный pdoTools, так как они ведут разработку исключительно с ним. Пару дней я назад выпустил новую версию этой библиотеки, предназначенную только для MODX3.
[ZoomX]. Кэширование роутов
Вышла новая минорная версия 3.3.0-pl. Ещё одна за неделю. Вроде бы незначительное событие. Но тут есть о чём написать в отдельной статье. Итак, что в ней нового?
- Добавлен механизм кэширования маршрутов.
- Для файловых сниппетов можно указывать несколько путей.
- Исправлен баг с отображением неопубликованных ресурсов для пользователей, у которых на это нет прав.
ZoomX. Фреймворковский подход к разработке
Привет, друзья! На днях вышла третья версия компонента ZoomX, которая позволяет взглянуть на разработку в MODX немного под другим углом. Как известно, MODX позиционирует себя не только как CMS, но и как CMF. Но под этим определением скрывается всего лишь возможность использования API MODX. В современном мире разработки при упоминании слова «фреймворк» всплывают другие ассоциации — абстракции, роутинг, сервисный слой, SOLID, тонкие контроллеры, RESTful API и т.п.
ZoomX 3.0. Полноценный шаблонизатор, файловые элементы и др.
Хорошая новость для тех, кто хочет использовать MODX и быть ближе к современной разработке. Данная версия позволяет полностью перейти на шаблонизатор Smarty как в режиме фреймворка (с использованием роутов и контроллеров), так и в обычном режиме. Т.е. теперь и в обычных шаблонах MODX можно использовать Smarty.
В общем, кто уже пользуется Fenom понимает всю перспективу, которую даёт данная возможность. Но в отличие от последнего, Smarty используется как настоящий PHP шаблонизатор — он изначально рассчитан на работу с файлами, полностью отвечает за парсинг (однократный!), за хранение и применение переменных. Кроме того, теперь его можно использовать в сниппетах pdoTools, в который заложен парсинг чанков только шаблонизатором Fenom или парсером MODX.
В общем, кто уже пользуется Fenom понимает всю перспективу, которую даёт данная возможность. Но в отличие от последнего, Smarty используется как настоящий PHP шаблонизатор — он изначально рассчитан на работу с файлами, полностью отвечает за парсинг (однократный!), за хранение и применение переменных. Кроме того, теперь его можно использовать в сниппетах pdoTools, в который заложен парсинг чанков только шаблонизатором Fenom или парсером MODX.
[pdoTools] Обновление 2.13 - повышение безопасности, данные для Fenom и т.д.
Друзья, представляю новую версию pdoTools с озвученным ранее функционалом. Не всё что запланировал успел сделать, но и в этой версии есть на что обратить внимание —
- Исправлены известные дырки безопасности
- вывод любого файла на сайте;
- отрефакторен сниппет pdoUsers;
- исправлена подмена пути (path traversal) в файловых элементах.
- Модификатор «setOption» помечен как deprecated и будет удалён в следующей версии.
- Параметры сниппетов «tplPath» и «elementsPath» помечены как deprecated и будут удалёны в следующей версии.
- Добавлена возможность выводить массив необработанных данных (нужно при использовании Fenom).
- Системные настройки «parser_class» и «parser_class_path» теперь будут регистрироваться в пространстве имён «core».