Петропавловский Артем

Петропавловский Артем

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

mFilter2 и оптимизация скорости на 7k товарах


Всем, кто хоть раз пытался завести mFilter2 на большом кол-ве товаров и хотя-бы 10 опциях в фильтре, известно, что тормозов не избежать. Вот и мне попался на днях сайт, в котором, казалось бы, всего-то 7000 товаров и 10 опций на странице каталога. Однако сниппет фильтра отрабатывал за 3-4 секунды. Переписал на Fenom — стал отрабатывать за 2-3 секунды.
Не годится! Тем более, что у заказчика было требование: «Чтобы сайтом было комфортно пользоваться». Что-ж, взял задачу — надо решать!

Дебаг показал, что проблема в методе mse2FiltersHandler::getMsOptionValues, а именно в запросе (7k товаров!), который выглядит как-то так:
SELECT `product_id`, `key`, `value` FROM `modx_ms2_product_options` AS `msProductOption` 
WHERE (`msProductOption`.`product_id` IN (3394,3408,еще 7 тысяч ID)
AND `msProductOption`.`key` IN ('atr_n1','atr_n6','atr_n5','atr_n12','atr_n43','atr_n46','atr_n29','atr_n11','atr_n44','atr_n2'))
Павел Гвоздь
14 августа 2017, 14:14
modx.pro
41
4 885
+21

minishop2 Баг: Такое изображение уже есть в галере

Загружаю картинки в галерею товаров. Выдаёт ошибку
Такое изображение уже есть в галерее товара.
http://prntscr.com/fhdgvh

Причем все картинки разные. Пробовал на нескольких сайтах, минишоп последней версии.
Вот эти файлы, можете попробовать их загрузить. Скачать

Подскажите пожалуйста, что можно сделать. Ведь картинки то разные.
PS: Было бы класнcо сделать системную настройку, которая отключает эту проверку.
Павел
08 июня 2017, 12:20
modx.pro
2
3 502
0

Можно ли взломать сайт на MODX?

Добрый день!
Такая проблема случилась:
Выгрузил сайт клиенту на хостинг, а он включил заднюю, нанял какого-то сисадмина, чтобы помог ему сменить все доступы и не хочет платить.
Как бы напрашивается вопрос: Есть ли такая возможность взломать MODX, чтобы справедливость восторжествовала? Возможно за $
Артем
23 января 2017, 20:04
modx.pro
23
7 933
+1

[msPromoCode] Кейс. Вывод информации по промо-коду в письме


Часто слышу вопрос о выводе промо-кода и информации по скидке в письме пользователю/менеджеру. На самом деле такая возможность есть уже давно, хоть и не совсем явным образом бросается в глаза. Делается это в 2 простых шага, которые описаны ниже.
Павел Гвоздь
26 декабря 2016, 09:25
modx.pro
10
2 571
+10

pdoresources запрос по датам

Привет, помогите пожалуйста, составить запрос в pdoResources, через where.

Есть две ТВ, datestart и dateend
А также есть определённая дата в таком формате: 2016-12-01

Нужно составить выборку, чтобы данная дата попадала в диапазон дат этих ТВ.
Павел
02 декабря 2016, 11:33
modx.pro
6
1 520
0

Регистрационные данные на почту клиента, miniShop2

Появилась задача: после заказа клиентом товаров в интернет-магазине, реализованном на miniShop2, высылать регистрационные данные (логин/пароль) на указанную почту клиента. Из коробки почему то такого функционала нет, хотя регистрация проходит. Получается так, что пользователь после оформления заказа даже и не подозревает что только что зарегистрировался на сайте. Как-то это не правильно. Собственно отсюда и появилась такая задача.
Марат Марабар
12 октября 2016, 12:01
modx.pro
24
4 371
+7

Добавление своих полей в форму заказа [обновлено]

При разработке нескольких проектов, возникала необходимость в получении дополнительных данных от покупателей, а полей в miniShop2 ограниченное количество. Поиск готового решения результата не дал, поэтому предлагаю свой вариант.

Решение обновлено, убраны правки исходного кода минишопа, теперь при обновлении ничего не затрется, изменены ключи у полей

Решалось это следующим образом:
1. Добавлялись необходимые поля, для примера взяты тип плательщика, название организации и инн.
2. Добавлялся плагин срабатывающий при сохранении заказа и при подключении js минишопа в админке.
3. Редактировались настройки и записи словарей.

Более подробно далее
Дмитрий Меркурьев
11 октября 2016, 16:38
modx.pro
97
19 946
+11

Скрипт для создания менеджера

Скрипт для создания пользователей с определенными правами и своим источником файлов для админки.

По умолчанию будет создан менеджер с логинам и паролем manager и медиа источником с корневым каталогам assets/uploads из прав у пользователя будет только возможность работать с ресурсами, а c пунктов меню доступ только к «Приложения»

Для настройки политики доступа необходимо в массив $accessPolicy добавить название определенной политики с значение 0 или 1
Prihod
09 октября 2016, 14:12
modx.pro
34
4 207
+22

Манипулирование ExtJs на лету через процессор

Оказалось проблема насущная:
Скинемся с миру по нитке решениями)
Например:
Создание textfield на лету при создание(редактирование) записи, т.е. При нажатии Добавить, всплывает окно в котором на лету созданные textfield, к примеру 3 штуки, а если это UPDATE то и их значение соответственно, помимо этого есть поля не созданные на лету.
При сохранение отправляется в процессор, в котором поля созданные на лету колбасятся в JSON и записыватся в 1 колонку БД.

Вроде ничего такого сложного, но встает проблема запроса получения массива полей на лету и передача его в вызов Всплывающего окна. Ajax запрос отрабатывает позже чем весь код, поэтому console.log(fieldsArr + ' — массив полей') не выводит массив или return не срабатывает.

Константин Ильин
04 октября 2016, 09:57
modx.pro
3
3 299
+1

[ExtJS] Расширяем компонент Collections



Часто ли вам приходится расширять какие-то стандартные штуки в MODX или в компонентах для него? Мне вот часто! Поэтому, давно хотелось поделиться чем-нибудь интересным на этот счёт, что я собственно и сделал в статье Дополнительные поля профиля юзера, где описал, как можно расширить профиль юзера, чтобы всё выглядело натурально. На этот раз расскажу, как можно расширять компонент Collections, не прибегая к крайним мерам, вроде правки исходников приложения.
Павел Гвоздь
27 сентября 2016, 21:34
modx.pro
31
5 403
+19