pdoTools. Планы на развитие
С сегодняшнего дня за развитие и поддержку компонента отвечаю я. Поэтому я планирую реализовать все те наработки, о которых писал и говорил. Вот планируемые работы на ближайшую версию —
- Закрыть вопросы безопасности насколько возможно. У сниппетов есть небезопасный параметр «elementsPath», который позволяет контент-менеджеру обходить соответствующую системную настройку. Я считаю, такое разрешать нельзя. Но его удаление влияет на обратную совместимость. Пока не придумал, что с этим делать.
- Оптимизировать класс pdoFetch для работы с запросами. Особенно актуально для больших сайтов.
- Добавить сниппетам возможность возвращать необработанный массив данных. Это востребовано при использовании Fenom. Сейчас есть возможность получить такой массив через кодировку в json и обратно, но это всё-таки оверхед.
Остаются ещё подвешенные вопросы с кэшированием файловых элементов и разными вызовами чанков. Тут придётся чесать голову двумя руками.
Ну и напоследок. Проект переехал на мой аккаунт. Issues там открыты. Так что пишите туда об ошибках и свои предложения.
П.С. Забыл написать про расширение Fenom плагинами, добавляющими функциональные возможности как у Smarty. Хотя я всё-таки из этих двух шаблонизаторов отдаю предпочтение Smarty.
Поблагодарить автора
Отправить деньги
Комментарии: 32
Добавить сниппетам возможность возвращать необработанный массив данных.Я тут похлопаю
Это востребовано при использовании Fenom. Сейчас есть возможность получить такой массив через кодировку в json и обратно, но это всё-таки оверхед.
Тоже буду очень рад такому функционалу!
@Сергей Шлоков, у меня нет возможности отправить на поддержку через кнопку выше. Я могу отправить тебе на PayPal?
@Сергей Шлоков, у меня нет возможности отправить на поддержку через кнопку выше. Я могу отправить тебе на PayPal?
Если есть желание поддержать проект, то почему нет?
Есть желание поддержать именно проект :) Давай email или ссылку на оплату для PP. Куда слать?
Ура, уважаемый Сергей теперь вместо того, чтобы просто бомбить, будет бомбить и делать)
Отличная новость.
У сниппетов есть небезопасный параметр «elementsPath», который позволяет контент-менеджеру обходить соответствующую системную настройку.Сознаюсь честно, использовал данную опцию в некоторых проектах, так как было удобно не строчить долгий путь к папке
Может я чего-то не понимаю, но получается совсем не короче. Этот путь из названия перемещается в параметр. Т.е. ещё нужно писать отдельный параметр. Что явно выглядит длиннее.
Хотя я всё-таки из этих двух шаблонизаторов отдаю предпочтение Smarty.А в связи с тем что fenom не обновляется уже больше года и по возможностям уступает другим шаблонизаторам, планируется ли в pdoTools добавить поддержку тогоже Smarty(Twig)? Ну или использовать по умолчанию не феном в pdotools для modx 3(если он когдато выйдет?).
Да, планирую. Если парсер для страниц можно указать любой (в системной настройке) и отказаться от pdoParser'а, то чанки парсятся жестко только феномом на глядя на то, какой парсер указан в настройке. В принципе можно отключить феном для чанков (отдельной настройкой), то там другая засада — текущий парсер включится только если есть скобки [[. Т.е. ни смарти ни твиговские теги не распарсятся. Как-то так, если я ничего не путаю.
В общем, задача — чтобы pdoTools всегда использовал указанный в системной настройке парсер, который может быть pdoParser, SmartyParser (есть в ZoomX) или TwigParser (если такой будет).
В общем, задача — чтобы pdoTools всегда использовал указанный в системной настройке парсер, который может быть pdoParser, SmartyParser (есть в ZoomX) или TwigParser (если такой будет).
Думаю, что для развития pdoTools нужно создать сбор, так как без поддержки энтузиазм долго не живет.
А еще, не мешало бы переписать скрипты на ванильный js.
А еще, не мешало бы переписать скрипты на ванильный js.
Ну можно поступить проще — нажать сверху кнопочку «Поблагодарить автора» и угостить его хорошим кофе ;)
Переслал на хорошее кофе с булочкой))
Прилетело. Спасибо за хороший кофе, но булочку заменю на хороший сыр. ))
Лови на очень вкусный кофе!
Спасибо! С утра уже 2 американо от бариста. ;)
Заслал на кофе, бро))
Упало. Спрячу на черный день )) Спасибо!
Отправил соточку :). С наумкиным не сложилось PR отправлять. Ошибки в pdoTools такие: кавычки неправильно ставит собака. Часто подсчет строк в кавычках, на функциях и where может неправильно кавычки поставит. Как вспомню где именно так отправлю Issues. В моей версии pdoTools они поправлены. Хотя и костылями.
Спасибо! С таким не сталкивался. Может это проделки xPDO? Вспомнишь, пиши.
Вопросы безопасности закрою в самом ближайшем будущем. Для понимания, я нашел сайт, на котором смог вывести полный список пользователей. Заходить в админку не стал, просто написал админу сайта. А дальше запускается робот и собирает список для взлома. А подписчикам моего телеграм-канала я показывал, что контент-менеджер (человек с доступом только к ресурсам) может вывести любой файл на страницу и как пример вывел файл config.inc.php. Тоже самое можно сделать снаружи на плохо защищённых сайтах как в первом примере. Так что вопрос серьезный.
Сергей, поздравляю! Хорошая новость.
Видишь как сложилось, ты хотел писать замену pdoTools, а получилось, что сам пакет тебе передали на попечение.
Жду с нетерпением возможности использовать smarty из твоего ZOOMX в pdoTools, теперь не надо будет использовать 2 шаблонизатора на сайте)
По поводу безопасности, читал и в телеге и в твоем блоге, может тут пойти по такому же принципу как в последней обнове движка сделали, для статичных элементов добавили настройки, ограничивающие куда можно класть статические элементы. Можно даже под эти настройки завязаться, так как один фиг все шаблоны где-то должны в одном месте лежать. То есть ограничить какой-нить одной папкой, чтобы ни до чего другого было не дотянуться.
Видишь как сложилось, ты хотел писать замену pdoTools, а получилось, что сам пакет тебе передали на попечение.
Жду с нетерпением возможности использовать smarty из твоего ZOOMX в pdoTools, теперь не надо будет использовать 2 шаблонизатора на сайте)
По поводу безопасности, читал и в телеге и в твоем блоге, может тут пойти по такому же принципу как в последней обнове движка сделали, для статичных элементов добавили настройки, ограничивающие куда можно класть статические элементы. Можно даже под эти настройки завязаться, так как один фиг все шаблоны где-то должны в одном месте лежать. То есть ограничить какой-нить одной папкой, чтобы ни до чего другого было не дотянуться.
Спасибо за поздравление с тем, что я буду больше бесплатно работать. )))
Замена планировалась на основе modHelpers. Осталось написать замену сниппетам. Но я хотел заменить их на сервисы. Чтоб как у взрослых. Чем меньше MODX специфичных вещей, тем легче перемещаться между стеками. И легче заходить в MODX из тех же фреймворков.
Замена планировалась на основе modHelpers. Осталось написать замену сниппетам. Но я хотел заменить их на сервисы. Чтоб как у взрослых. Чем меньше MODX специфичных вещей, тем легче перемещаться между стеками. И легче заходить в MODX из тех же фреймворков.
Можно даже под эти настройки завязаться, так как один фиг все шаблоны где-то должны в одном месте лежать.Статические элементы и файловые элементы — семантически разные вещи. Последние не имеют дубля в БД. Лучше их не путать. Дополнительные настройки только запутают людей. В pdoTools есть системная настройка «pdotools_elements_path». Её определяет человек с правами на эту операцию. Если нужно переопределять папку с шаблонами согласно какой-то логике, контент-менеджер просит этого человека и тот пишет плагин, в котором переписывает настройку согласно задаче. Всё просто, логично и под контролем. Ну не должен контент-менеджер иметь права гулять по всей файловой системе.
Поправьте ссылку в пагинации /?page=1, чтобы она вела на первую страницу без пагинации. Сеошники задолбали с этим.
Хотелки и пожелания нужно оставлять в виде issue на странице компонента
Очень круто! Отправил свои пять рублей))
Спасибо! А я пью ;)
Хорошая новость. Поддержал историю с донатами
Положил в копилку. Спасибо!
Внес свою лепту) Спасибо за ваш труд!
Спасибо!
Сергей пожалуйста добавте это функцию на все сниппеты
&direction ltr
Направление навигации: слева направо «ltr» или справа налево «rtl», например для Арабского языка.
Можно ли добавить поддержку параметра return для pdoNeighbors. В самом сниппете не очень удобно выводить результаты, а если получить только id и выводить уже привычными способами будет гораздо удобнее.
Ещё, если это возможно, давить параметр для обёртки каждого результата pdoresources. Сейчас можно обернуть только весь вывод, но не каждый результат.
Ещё, если это возможно, давить параметр для обёртки каждого результата pdoresources. Сейчас можно обернуть только весь вывод, но не каждый результат.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.