Павел Гвоздь

Павел Гвоздь

С нами с 31 мая 2015; Место в рейтинге пользователей: #2

Ускоряем SeoFilter или почему хлебные крошки такие дорогие


Последнее время почти на каждом магазине встречаю компонент SeoFilter. Полагаю, что компонент пользуется спросом, т.к. позволяет очень точечно оптимизировать динамические страницы фильтра mSearch2. Вот и в этот раз ко мне обратился человек с задачей оптимизации скорости ИМ, на котором был установлен данный компонент.
Я уже однажды писал статью про оптимизацию фильтра каталога, реализованного на mSearch2, однако в этот раз дело было совершенно в другом…
Павел Гвоздь
14 июня 2019, 09:30
284
+10

Можно ли украсть банковские карты клиентов с сайта на MODX?


На Хабре вчера появилась статья про то, как внедрив JS код на страницы сайта можно украсть данные пользователей (в том числе и банковские карты). Я пробежался по сайтам заказчиков, к которым на данный момент имею доступ и на 1 из 5 сайтов был обнаружен код сниффера ReactGet. Естественно, я удалил вредоносный код, о чём сообщил владельцу сайта.
В целях конфиденциальности, я не буду указывать адрес сайта, об этом меня попросил его владелец.

Да, хотя в статье нет ни слова о MODX, это не говорит о том, что он не подвержен заражению. К слову сказать, данный ИМ совсем недавно только обновили с версии 2.3 до 2.7, поэтому угроза заражения была достаточно велика.

Тем не менее, всем разработчикам предлагаю проверить свои сайты на подобную угрозу. Ну и пишите в комментах, удалось ли что-то обнаружить.
Павел Гвоздь
15 мая 2019, 10:32
658
+3

[msPromoCode] 1.4.0 Фильтрация заказов по промокоду в списке miniShop2


Обновление затрагивает список заказов miniShop2, а именно форму для фильтрации, в которой можно указать параметр, по которому будет сделана выборка списка заказов.
В новой версии добавлено нежное расширение ExtJS объекта miniShop2.panel.OrdersForm. Поле для ввода промокода аккуратно добавляется вторым, после поля поиска по номеру заказа.

Спонсор сего чуда Muscat Catering, все вместе их благодарим! А под катом скриншот того, как это выглядит и рекомендованное действие, которое нужно совершить после обновления компонента.
Павел Гвоздь
24 марта 2019, 21:15
172
+4

[msOrderAnalytics] 1.1.0 Привязка идентифицированного клиента к заказу

В новой версии добавлена привязка отсылаемого заказа к пользователю, которого идентифицировал Google Analytics в момент входа клиента на сайт.

Я давно хотел связать заказ с клиентом GA, но времени на альтруизм совсем не было. Однако, на днях мне поступил запрос на доработку этого функционала от uweb.agency. Заказчику было нужно, чтобы определялся источник трафика.
Павел Гвоздь
08 марта 2019, 10:16
243
+6

[msPromoCode] Отменяем промо-код при помощи API компонента


В этом кейсе я покажу, как программно (через плагины) можно обращаться к API и отменять или вовсе запрещать применение промо-кода, когда в корзине есть запрещённые товары.

Я умышленно использовал событие mspcOnSetCoupon вместо mspcOnBeforeSetCoupon, чтобы наглядно показать, как можно отменить скидку на корзину и отменить уже применённый промо-код через API компонента.
Павел Гвоздь
07 марта 2019, 11:45
194
+5

[YandexMaps2] 1.2.0 События jQuery и API ключ


У компонента появился jQuery триггер ymOnLoadMap. Теперь можно после загрузки карты выполнить свой JS код, не прибегая к правкам исходного default.js.

Также, не так давно Яндекс внедрил для карт обязательное указание API ключа. В связи с этим, пользователям компонента YandexMaps2 нужно произвести некоторые действия, чтобы их карты работали и дальше.
Павел Гвоздь
06 марта 2019, 14:47
243
+4

[xCalc] Кейсы. Калькулятор подоконников и AjaxForm в результатах расчёта


Друзья, вчера добавил 2 кейса в документацию по xCalc. Первый описывает, как работает компонент и как вообще создать при помощи него калькулятор. А второй, в качестве небольшого бонуса, про то, как настроить вывод AjaxForm в результатах расчёта.
Как говорится — переходите по ссылкам в описании!
Павел Гвоздь
26 февраля 2019, 08:59
1
273
+7

[miniShop2] Кнопка печати заказа из бек-энда


Часто приходится реализовывать максимально простую распечатку заказа из бек-энда для админов. Делается это в 3 простых и лёгких шага!
Павел Гвоздь
09 января 2019, 21:54
23
461
+24

Сладкий синтаксис в Fenom


На просторах сообщества уже много раз поднималась тема расширяемости синтаксиса Fenom. В pdoTools для этого есть даже событие плагина pdoToolsOnFenomInit. В этой заметке предлагаю добавить некий синтаксический сахар для ещё более приятного использования классного шаблонизатора. Мы добавим подключение файлового чанка в шаблон таким образом
{chunk 'path/to/chunk'}
и вызов сниппета таким
{snippet 'pdoResources' ['param' => 'value']}
Павел Гвоздь
09 января 2019, 18:57
5
755
+12

[msPromoCode] Документация на docs.modx.pro


Ребят, я наконец нашёл время собрать всю документацию по msPromoCode в едином месте.

Там я описал:
  1. Особенности и имеющийся функционал компонента,
  2. Инструкцию по установке и настройке,
  3. Доступные сниппеты,
  4. Триггеры jQuery, доступные из фронт-энда,
  5. Все события плагинов компонента со списком доступных параметров,
  6. Пару кейсов, которые были описаны на просторах modx.pro.
Надеюсь это будет кому-то полезным!
Павел Гвоздь
17 декабря 2018, 07:41
1
533
+15