В CMF MODX Revolution изначально не предусмотрена возможность ставить задачи и привязывать их к ресурсам. Такое дополнение я тоже не нашел, да и было интересно разобраться в создании виджетов, поэтому придумал решение, как можно быстро реализовать такой функционал на своем сайте. Собственно, в этой статье хочу им поделиться.
MODX *
Система управления содержимым с открытым кодом
Новости
ZoomX. Меняем правила шаблонизации в MODX Revolution
Что такое ZoomX
Задача, которую позволяет решать данный компонент — максимально полный отказ от встроенного шаблонизатора MODX. Таким образом, мы выбрасываем многократный парсинг контента, элементы, хранящиеся в БД, плейсхолдеры с точками и плюсами и добавляем любой современный быстрый мощный PHP шаблонизатор. Стандартные шаблоны из БД теперь используются только для привязки TV-шек к ресурсам.
Как создать RESTful API на Symfony 5 + API Platform для проекта на MODX
Из этого урока Вы узнаете как можно быстро создать RESTful API для любого сайта на любой CMS, MODX — это только пример.
Для создания API я буду использовать:
Evolution CMS 2.0 на компонентах Laravel 6.0 — естественная эволюция MODX Evolution
Настало время релиза Evolution CMS 2.0 RC на компонентах Laravel 6.0, но как показал предыдущий релиз и последующие за ним обсуждения — существует масса вопросов и мифов связанных с веткой 2.0.
Самый популярный миф — в новой ветке все изменилось и по-старому уже не будет.
Неправда — будет и по-старому. Основное отличие в том, что сохранив возможности “по-старому” мы добавили возможности и “по-новому”. Уровень входа не изменился, но более продвинутые разработчики получат много готовых решений и возможностей, а те кому достаточно существующих компонентов могут работать также, как и раньше, никто не будет никого лишать привычных вещей.
Уровень совместимости максимальный — даже с версии 0.9 вы можете обновиться до 1.4, а с нее до 2.0 при сохранении функционала. Хотя надо учитывать возможные проблемы которые могут возникнуть с depricated методами из за того что нужно поднять версию php до 7.2, но скорость работы того стоит, а реагировать на эти баги буду быстро, чтобы приблизить срок стабильного релиза.
Истории
MODX-Дайджест #5 (22 апреля – 13 мая 2019)
Свежая подборка новостей о MODX за последние 3 недели. В выпуске: возобновление встреч MAB, все процессоры переведены в новый формат, активная работа над рефакторингом и документацией, обновления дополнений и интересные заметки.
Выпуск получился за 3 недели, так как были праздники и длинные выходные, которые с удовольствием провел в семейном кругу, так что не обессудьте за небольшую задержку. Тем более, что выпуск получился насыщенным.
Приятного чтения!
Thanks a lot to Mark Hamstra for supporting me and my work (Patreon).
А так же спасибо всем тем, кто поддерживает переводя деньги на яндекс кошелек. Пишите ваши имена в комментариях к переводу, чтобы я мог вас поблагодарить персонально.
Механизм контроля версий базы данных в GIT (управление дампами MySQL)
Привет, любители Хабра! Сегодня я решил поделиться своим вариантом бекапа данных из MySql и рассказать о том как его можно использовать для контроля версий в Git. И если вам интересно узнать, как можно контролировать состояние базы данных на всех этапах разработки, или просто делать правильные бекапчики базы своих проектиков и разворачивать из в любой момент времени, тогда прошу к прочтению!
MODX-Дайджест #4 (8 – 22 апреля 2019)
Свежая подборка новостей о MODX. В выпуске: закрылся сайт modx-клуба, прогресс с конвертацией процессоров, активная работа над документацией, заметки и обновления дополнений.
Приятного чтения!
MODX-Дайджест #3 (25 марта – 8 апреля 2019)
Свежая, хоть и немного запоздалая, подборка новостей о MODX. В выпуске: долгожданный рефакторинг от Джейсона, пару слов о митапе в Амстердаме, новый сайт modx.com, а так же обновления дополнений, новости и заметки.
Приятного чтения!
Автор этого дайджеста хорошо так заболел на прошлой неделе, поэтому выпуск дайджеста пришлось отложить на время решения проблем со здоровьем. В силу этого не откажусь от любой помощи в подготовке следующих релизов, чтобы успевать в срок.
MODX-Дайджест #2.1 (11 марта – 25 марта 2019)
Свежая подборка новостей о MODX. В выпуске: ночные сборки 3 версии, новый SEO Tab, большое обновление компонентов Василия Наумкина, упоминания пользователей на MODX.pro и некоторые подробности рефакторинга от Джейсона.
Приятного чтения!
Нумерация дайджеста изменена, чтобы не конфликтовать с серией дайджестов (#1 и #2) от Andchir.
MODX-Дайджест #1.1 (25 февраля – 11 марта 2019)
Свежая подборка новостей о MODX. В выпуске: иконки для типов содержимого, рефакторинг 3 ветки от Джейсона, работа над новой документацией, благодарности автору на modx.pro и видео выступлений со всех минских MODX-мероприятий.
Приятного чтения!
Нумерация дайджеста изменена, чтобы не конфликтовать с серией дайджестов #1 и #2 от Andchir.
Сборка transport-пакета без установки MODX
Писать свои пакеты для MODX не просто для новичка, да и опытному разработчику иногда не сладко приходится. Но новичок пугается, а опытный разбирается :).
Эта заметка рассказывает о том, как можно написать и собрать пакет компонента для MODX без установки и настройки самого MODX. Уровень выше среднего, так что возможно придется поломать голову в отдельных случаях, но оно того стоит.
За подробностями прошу под кат.
PHPDump — Отладка в консоли Google Chrome и взаимодействие с CMS MODX
Сразу к делу
Есть собственный продукт который успешно мне помогает в отладке и назвал его PhpDump.
В свое время CMS MODX побудил меня написать свой отладчик. Конечно же есть var_dump, phpConsole, xDebug в PHP. Но тут я со своим PhpDump.
Скажу что решение не идеальное, но очень практичное.
Насколько вам понравится, решать вам.
5 новых анти-спам плагинов от CleanTalk
Мы решили продолжить вести блог и будем в нем рассказывать о своей работе. Начнем с того, что расскажем о том, что нами было нами сделано в 2017 году. За прошедший год нами были разработаны несколько антиспам модулей для CMS, о которых я расскажу подробнее.
Ближайшие события
MODx Revo workflow. Организация рабочего процесса, контроль версий и деплой
Приведу основные требования, чего я хочу от своего рабочего процесса на MODX Revo:
- контроль версий везде, где пишу какой-либо код (html, css, js, php),
- иметь отдельную dev-версию сайта, на которой ведётся текущая разработка, а после — деплоить все изменения в продакшн, причём, желательно, автоматизировать этот процесс,
- минимум копипаста при разработке и деплое.
Защищаем MODX Revolution
Привет, друзья!
Немало статей написано и переписано о том, как защитить MODX, но в этой статье я опишу не только стандартные рекомендации по защите инстанса MODX Revolution (далее я буду писать просто MODX, потому что ветка MODX Evolution — это тупиковая ветвь «эволюции» являющаяся рудиментом не заслуживающим внимания современных разработчиков), но и некоторые новые методы «заметания следов».
Готовая сборка новостного портала NewsModxBox
Два года назад я писал про готовую сборку интернет-магазина на MODX Revolution. За это время было сделано не мало интернет-магазинов на ShopModxBox (о бОльшая их часть силами сторонних разработчиков) и на сегодня количество установок движка составляет 200-300 штук в месяц. Проект и сегодня продолжает развиваться, получая в ядро новый полезный функционал.
Главные качества, которые мы отмечаем в ShopModxBox — это высокая производительность, гибкость и минимальный объем кода (ShopModxBox — это решение на базе фреймворка MODX Revolution, и его собственная часть кода составляет буквально 3-5 тысяч строк php-кода + Smarty-шаблоны).
И вот на днях мы выпустили новую сборку NewsModxBox. Здесь основа та же, что и в ShopModxBox, только логика заточена именно под новостные порталы и СМИ. Сборка пилилась под реальный и совсем не маленький новостной портал и во многом отвечает реалиям бизнес-логики электронных и смешанных СМИ.
QuadBraces — по мотивам парсера MODx
Когда я заглянул в исходники MODx Evolution, меня едва ли не хватил удар. Рефакторить, рефакторить и рефакторить, как, наверное, сказал бы Ильич. По сему меня хватило едва ли на пару недель рефакторинга, после чего я забросил это дело, ибо времени откровенно не было. Но разговор пойдёт не об этом.
Система шаблонизации MODx на мой взгляд — одна из самых лучших. Особенно хорошо постарались разработчики в MODx Revolution. Всё логично, расширяемо, гибко и прям-таки пасторально. Можно сказать, синтаксис шаблонизации MODx — это почти что отдельный язык разметки. Именно такое вот восхищение стало причиной, по которой я стал использовать эту методику в других проектах. И для того, чтобы не заколачивать микроскопом гвозди, то есть не ставить для лендингов MODx, но иметь возможность использовать эту шаблонизацию, я написал отдельный класс шаблонизатора. И даже дал название — QuadBraces.
Особенности метода xPDOObject::save() + транзакции
Здесь сразу попрошу не начинать ничего вроде «Если делаете крупные проекты, не надо их делать на MODX, возьмите бла-бла-бла». Мы делали крупные проекты, и не только на MODX. На MODX вполне можно делать крупные проекты, и на сегодня есть всего лишь пара слабых мест, которые мы правим на индивидуальных проектах, в остальном же MODX на 98% пригоден для разработки крупных проектов.