dvgtu
С нами с 15 августа 2014; Место в рейтинге пользователей: #1246Прямые переводы в MODX-Клубе через slack
Сразу извиняюсь за рекламу, но думаю, интересно будет многим.
В продолжение предыдущей статьи у нас совсем свежая и интересная новость: на MODX-Клубе мы таки докрутили балансы и прямые переводы между участниками Клуба. Вообще балансы (как и подписка на репозиторий) давно были реализованы, но до боле менее публичного уровня дорабатывать не хватало вдохновения. А тут со слэком сам Бог велел. Теперь свои монетки можно перевести любому другому пользователю.
В продолжение предыдущей статьи у нас совсем свежая и интересная новость: на MODX-Клубе мы таки докрутили балансы и прямые переводы между участниками Клуба. Вообще балансы (как и подписка на репозиторий) давно были реализованы, но до боле менее публичного уровня дорабатывать не хватало вдохновения. А тут со слэком сам Бог велел. Теперь свои монетки можно перевести любому другому пользователю.
Дополнительные поля профиля юзера (не extended)
Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Расширение любых таблиц MODX
В очередной раз понадобилось изменить таблицу сайта, менять которую не предусмотрено.
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Что обычно люди делают в таких случаях? Верно, редактируют ядро или нужный компонент, и больше их не обновляют. Но ведь это неправильно, и можно решить вопрос иначе.
Пишем обычный плагин, выставляем для него событие OnMODXInit и меняем модель для нужных классов системы или дополнений. Например, я добавил id менеджера в заказ miniShop2:
Правильный хостинг для MODX Revolution
Топик рассказывает о настройке быстрого и недорогого хостинга для MODx Revolution. В принципе, вещи тут описаны общие, так что информация подойдет для любой CMS.
На всякий случай, приложу видео, как должна работать админка MODx Revo.
Для быстрой и комфортной работы желательно:
— Быстрый браузер — Google Chrome. Админка Revo работает в нем молниеносно
— Хороший интернет-канал. Тут без вариантов, нужно всем и всегда.
— Качественный хостинг — про него и пишу.
В итоге у меня вообще получились скрипты автоматической установки для серверов, настроенных по этой статье. И даже видео-инструкция.
На всякий случай, приложу видео, как должна работать админка MODx Revo.
Для быстрой и комфортной работы желательно:
— Быстрый браузер — Google Chrome. Админка Revo работает в нем молниеносно
— Хороший интернет-канал. Тут без вариантов, нужно всем и всегда.
— Качественный хостинг — про него и пишу.
В итоге у меня вообще получились скрипты автоматической установки для серверов, настроенных по этой статье. И даже видео-инструкция.
Как не хакать сторонние классы
Бывает, что вы используете какой-то сниппет или компонент, и он немного вас не устраивает. Вам нужно поправить буквально пару строк, но вы понимаете, что при обновлении эти измения пропадут.
Что же делать?
Все просто — нужно расширить сторонний класс своими методами. По сути, это очень похоже на «классные процессоры», только без процессоров и использовать можно везде — это стандартная возможность ООП.
Что же делать?
Все просто — нужно расширить сторонний класс своими методами. По сути, это очень похоже на «классные процессоры», только без процессоров и использовать можно везде — это стандартная возможность ООП.
Пара фокусов с xPDO
В ходе одного исследования выяснил несколько интересных вещей про xPDO, о которых раньше не задумывался или некогда было проверить.
Решил немедленно поделиться.
Решил немедленно поделиться.