Павел Романов
С нами с 03 марта 2014; Место в рейтинге пользователей: #70Дополнительные поля профиля юзера (не extended)
Разрабатываю проект, в котором необходимо было реализовать более простое редактирование дополнительных полей профиля, чем есть из коробки. К слову, неудобное редактирование — это не единственный минус нативного способа расширения профиля полями. Ни для кого не секрет, что фильтрацию по JSON полям нормально не осуществить, только костылями. Фактически, мне надо было получить решение, которое бы расширяло стандартный код MODX, не трогая исходники, дабы сохранить
Пришёл к выводу, что буду расширять стандартную вкладку профиля «Общая информация». При желании можно чуть переписать код в событии OnUserFormPrerender и создать свою вкладку со своими полями.
Система краудфандинга на miniShop2
Добрый день.
Собираю краудфандинг систему на всеми нами любимом miniShop2 с минимальными изменениями. Да, это полноценный рабочий вариант наподобие кикстартера, индигого и планета.ру. Уже есть, чем поделиться, но хотелось бы получить от вас советов, дополнений. Вообщем, совместными усилиями доработать, буду премного благодарен. Почти все есть в свободном доступе в этом сообществе, так что осталось дело за малым – собрать все воедино.
Для постинга проектов пользователями выбрал Tickets. Если создавать проекты, как товары miniShop2, то задание гораздо упрощается, но мне очень нравятся тикеты, хоть убейте.
Далее будет информация о
сниппетах
get_backers_page – вывод списка пользователей, поддержавших проект, а также суммы пожертвования
get_backers_count – сколько всего раз пожертвовали данному проекту
get_backers_sum – сумма всех пожертвованных денег проекту
get_backers_percentage – процент пожертвованных денег от нужной суммы
плагинах
pricefree – обработка произвольной цены на странице оплаты
priceselect – radio кнопки с выбором пожертвования
а также немного js и модификаций miniShop2
Добро пожаловать под кат :)
Собираю краудфандинг систему на всеми нами любимом miniShop2 с минимальными изменениями. Да, это полноценный рабочий вариант наподобие кикстартера, индигого и планета.ру. Уже есть, чем поделиться, но хотелось бы получить от вас советов, дополнений. Вообщем, совместными усилиями доработать, буду премного благодарен. Почти все есть в свободном доступе в этом сообществе, так что осталось дело за малым – собрать все воедино.
Для постинга проектов пользователями выбрал Tickets. Если создавать проекты, как товары miniShop2, то задание гораздо упрощается, но мне очень нравятся тикеты, хоть убейте.
Далее будет информация о
сниппетах
get_backers_page – вывод списка пользователей, поддержавших проект, а также суммы пожертвования
get_backers_count – сколько всего раз пожертвовали данному проекту
get_backers_sum – сумма всех пожертвованных денег проекту
get_backers_percentage – процент пожертвованных денег от нужной суммы
плагинах
pricefree – обработка произвольной цены на странице оплаты
priceselect – radio кнопки с выбором пожертвования
а также немного js и модификаций miniShop2
Добро пожаловать под кат :)
Закрываем служебные директории MODX в Apache
В одной статье, касающейся безопасности, Василий дал очень хорошую рекомендацию по защите служебных папок. Реализовав это на своём хостинге, решил написать инструкцию, так как начинающие изучать MODX могут столкнуться с ошибкой 404, как Я например.
Курс по работе на чистом PHP
Привет, друзья! Хочу обрадовать вас новостью, что мой последний курс по работе на чистом PHP открыт всем желающим, бесплатно.
На этом курсе рассмотрены темы:
Комментирование заметок, как обычно, отключено — всё в режиме «только для чтения». Спасибо всем тем 19 добрым людям, которые купили курс в своё время.
На этом курсе рассмотрены темы:
- Простой каркас ООП сайта и контроллеры
- Работа с Composer и установка готовых решений
- Установка, подключение и использование Fenom
- Установка, подключение и использование xPDO
- Ajax-пагинация своими руками
Комментирование заметок, как обычно, отключено — всё в режиме «только для чтения». Спасибо всем тем 19 добрым людям, которые купили курс в своё время.
Редирект и запрет индексации внешних ссылок
Плагин срабатывает на пререндер страницы, отлавливает все внешние ссылки, и, в зависимости от настроек, делает редирект через внутреннюю страницу, добавляет target="_blank", rel=«nofollow» или оборачивает в noindex.
Скрипт создающий sudo юзера
Бывают ситуации, что пароль от админа теряется, а к почте, на которую зареган админ, доступа нет. Данный скрипт создаёт sudo юзера при запуске с рандомным логином и паролем. Дальше уже можно через этого юзера поменять пароль от админа, а залогинившись под админом — удалить только что созданного sudo. Скрипт просто надо закачать в папку с MODX и запустить.
Sitemap Submitter
Мини плагин для оповещения поисковиков об обновлении карта сайта.
В логах выводит отчет если хотите можете отключит.
В логах выводит отчет если хотите можете отключит.
msImportExport
Вторая версия пакета обсуждается в только в этом посте
Компонент предназначен для импорта экспорта товаров для miniShop2
Импорт
Импорт происходит из CSV файла. На основании ключевого поля (которое указывается в настройках и по умолчанию имеет значение «article») будет происходить либо добавление нового товара, либо его обновление.
При добавлении нового товара если не указан для него родитель, то товар будет добавлен в базовую категорию.
Компонент предназначен для импорта экспорта товаров для miniShop2
Импорт
Импорт происходит из CSV файла. На основании ключевого поля (которое указывается в настройках и по умолчанию имеет значение «article») будет происходить либо добавление нового товара, либо его обновление.
При добавлении нового товара если не указан для него родитель, то товар будет добавлен в базовую категорию.
Соединяем EasyComm и mFilter2
Всем привет, и сразу к делу (кстати пишу первый раз тут, если будут ошибки — исправим).
Довольно таки часто требуется в интернет магазинах или каталогах добавить возможность пользователям писать отзывы о товарах, с этим очень хорошо справляется компонент EasyComm. Но очень часто возникает и смежная задача, слепить EasyComm с mFilter2, а именно сделать сортировку по количеству отзывов или по рейтингу товара. Выкладываю готовое решение.
Добавляем в вызов mFilter2 следующий код:
Довольно таки часто требуется в интернет магазинах или каталогах добавить возможность пользователям писать отзывы о товарах, с этим очень хорошо справляется компонент EasyComm. Но очень часто возникает и смежная задача, слепить EasyComm с mFilter2, а именно сделать сортировку по количеству отзывов или по рейтингу товара. Выкладываю готовое решение.
Добавляем в вызов mFilter2 следующий код:
&loadModels=`easycomm`
&where=`{"class_key":"msProduct"}`
&leftJoin=`{
"ecThread": {
"class": "ecThread",
"on": "msProduct.id = ecThread.resource"
}
}`
&select=`{
"msProduct": "*",
"ecThread": "ecThread.rating_simple AS rating, ecThread.count AS reviews"
}`