Алексей Шумаев
С нами с 30 ноября -0001; Место в рейтинге пользователей: #24Отправка Email о регистрации при оформлении заказа в miniShop2
Буквально на днях я столкнулся с вопросом, о котором как то не задумывался.
При оформлении заказа в minishop2 создается пользователь, но сам пользователь о собственной регистрации ничего не знает.
Как отправить пользователю письмо, с первоначальными регистрационными данными (логин, пароль)?
Стандартный комплект методов нашего любимого интернет-магазина такого не предусматривает. А значит руки в плечи и пишем плагин.
При оформлении заказа в minishop2 создается пользователь, но сам пользователь о собственной регистрации ничего не знает.
Как отправить пользователю письмо, с первоначальными регистрационными данными (логин, пароль)?
Стандартный комплект методов нашего любимого интернет-магазина такого не предусматривает. А значит руки в плечи и пишем плагин.
Безопасность MODX, часть 2 - использование @ привязок
Это вторая часть доклада с конференции MODX Meetup Moscow. С первой частью про обход фильтрации MODX тегов можете ознакомиться тут.
Безопасность MODX, часть 1 - обход фильтрации MODX тегов
Это первая часть доклада с конференции MODX Meetup Moscow. Информацию решил разбить на 2 статьи посвященных разным векторам атак. Полная запись доклада доступна в ВК, а на ютубе запись моего экрана. Ну и естественно слайды.
[modSizeControl] - компонент позволяющий контролировать размер сайта
Привет сообществу!
Выражаю большую благодарность Павлу Зарубину, так как компонент выйдет в целом его стараниями.
Несколько раз сталкивался с проблемой, когда менеджеры пользуются дисковым пространством как бесплатным файловым хранилищем и им кажется, что оно неиссякаемое. Хостинги которыми я пользовался не предоставляли и вряд-ли будут предоставлять подробные данные о размерах отдельных папок/сайтов (должно быть ресурсозатратный процесс) потому и приходилось искать разжиревшие сайты вручную. Это была веская причина для того чтобы разработать данный компонент, который был призван облегчить решение такого рода проблем.
Выражаю большую благодарность Павлу Зарубину, так как компонент выйдет в целом его стараниями.
Несколько раз сталкивался с проблемой, когда менеджеры пользуются дисковым пространством как бесплатным файловым хранилищем и им кажется, что оно неиссякаемое. Хостинги которыми я пользовался не предоставляли и вряд-ли будут предоставлять подробные данные о размерах отдельных папок/сайтов (должно быть ресурсозатратный процесс) потому и приходилось искать разжиревшие сайты вручную. Это была веская причина для того чтобы разработать данный компонент, который был призван облегчить решение такого рода проблем.
[tvSuperSelect] Кейс. Удобное указание опций для фильтрации в mFilter2
Часто интернет магазину требуется большое кол-во разделов каталога (500) и такое же большое кол-во опций (200). Заказчик хочет, чтобы:
— опции можно было легко выбирать при редактировании категории товаров,
— на фронте, если у категории не выбрано ни одной опции, брать эти опции из родительской категории, у которой они указаны.
С tvSuperSelect теперь сделать это не так уж сложно, как может показаться.
[Reminder] MODX Meetup Moscow: 29 сентября '18
Привет!
Пришло время напомнить о нашем мероприятии. 29 сентября пройдёт встреча сообщества MODX в Москве! Отличный повод собраться единомышленникам, пообщаться с западными коллегами и обсудить актуальнейшие вопросы. Языкового барьера не будет — переводчик-синхронист с нами.
Мы определились с докладчиками и программой. Но, как обычно, все может поменяться в процессе :-)
Пришло время напомнить о нашем мероприятии. 29 сентября пройдёт встреча сообщества MODX в Москве! Отличный повод собраться единомышленникам, пообщаться с западными коллегами и обсудить актуальнейшие вопросы. Языкового барьера не будет — переводчик-синхронист с нами.
Мы определились с докладчиками и программой. Но, как обычно, все может поменяться в процессе :-)
Полезные методы xPDOCacheManager
Класс xPDOCacheManager реализует механизм кеширования в MODX. Кеш у нас хранится в файлах, а значит, этот класс может помочь нам в работе с файловой системой.
Чтобы иметь доступ к методам класса xPDOCacheManager, нужно получить экземпляр этого класса. Это делается одной строчкой:
xPDOCacheManager::writeFile
Первый метод поможет нам записывать данные в файл. Работает он очень просто:
Чтобы иметь доступ к методам класса xPDOCacheManager, нужно получить экземпляр этого класса. Это делается одной строчкой:
$cache = $modx->getCacheManager();
xPDOCacheManager::writeFile
Первый метод поможет нам записывать данные в файл. Работает он очень просто:
$cache->writeFile(MODX_BASE_PATH . 'filename.txt', 'Текст');
[tvSuperSelect] 1.2.2 Кастомайз по полной программе!
История SQL-injection в MODX Revolution
История SQL-injection в MODX Revolution начинается с того, что любой багрепорт изначально воспринимается как «ожидаемое поведение».
Так было в декабре 2013 года с подготовкой запроса через метод toSQL
Так было в декабре 2013 года с подготовкой запроса через метод toSQL
Ускоряем массовое обновление ресурсов в 3 раза
Массовая выгрузка ресурсов, не такая уж простая задача, как может показаться на первый взгляд. Много подводных камней, касающихся улучшения производительности скрипта. Особенно неприятно, когда тормозит скорость работы из-за функционала ядра MODX.
Так, например, я столкнулся с куском кода в ядре, который увеличивает время выгрузки большого кол-ва товаров в ~3 раза, выполняя одно и то же ресурсоёмкое действие каждый раз, когда скрипт запускает обновление ресурса через процессор modResourceUpdateProcessor.
Сразу оговорю тот момент, что я не считаю этот кусок кода в ядре лишним или вредным, нет! Я полагаю, что этот код при обновлении большого кол-ва ресурсов можно выполнить самостоятельно по окончании работы скрипта выгрузки.
Я говорю вот об этой строчке кода. Давайте попробуем разобраться, что же с ней не так!
Так, например, я столкнулся с куском кода в ядре, который увеличивает время выгрузки большого кол-ва товаров в ~3 раза, выполняя одно и то же ресурсоёмкое действие каждый раз, когда скрипт запускает обновление ресурса через процессор modResourceUpdateProcessor.
Сразу оговорю тот момент, что я не считаю этот кусок кода в ядре лишним или вредным, нет! Я полагаю, что этот код при обновлении большого кол-ва ресурсов можно выполнить самостоятельно по окончании работы скрипта выгрузки.
Я говорю вот об этой строчке кода. Давайте попробуем разобраться, что же с ней не так!