alexandr.skyrda

alexandr.skyrda

С нами с 06 ноября 2019; Место в рейтинге пользователей: #445
alexandr.skyrda
22 апреля 2024, 17:16
0
я делал так-то так:

if ($modx->event->name == 'msOnGetProductFields') {
        $returned_values = & $modx->event->returnedValues;
        $values = $modx->event->params['data'];
        $product = $modx->getObject('msProduct', $values['id']);
        
        $userGroupId = $modx->user->getUserGroups()[0];
        $sale_group = [1, 2, 3]; // ИД групп, для которых другая цена
            
            if ($modx->user->isAuthenticated() && in_array($userGroupId, $sale_group)) {
                $new_price = null;
                switch($modx->user->getUserGroupNames()[0]) {
                    case 'НАЗВАНИЕ ГРУППЫ ПОЛЬЗОВАТЕЛЕЙ':
                        $new_price = $product->get('price_basovye')[0]; // Цена записана в опцию товара
                        break;
                }
                $returned_values['price'] = $new_price;
            }
}
наверное не самое элегантное решение, но работает
alexandr.skyrda
28 февраля 2024, 12:51
0
Т.е. вызывать mfilter для каждого пункта категории в меню?
alexandr.skyrda
28 февраля 2024, 12:50
0
Это я понимаю, это не сложно, главный вопрос, как вывести все значение тв поля, которые имеют товары этой категории. Что бы по ссылке не переходили на пустую выборку
alexandr.skyrda
15 февраля 2024, 14:28
0
спасибо, буду пробовать
alexandr.skyrda
15 февраля 2024, 14:12
0
добрый день, спасибо за ответ, а проблема с изображениями в галерее тоже будет как здесь https://modx.pro/help/22639
что они не удаляются?
alexandr.skyrda
01 февраля 2024, 15:14
+1
спасибо, именно в этом проблема была
alexandr.skyrda
01 февраля 2024, 01:13
0
72 тысячи запросов как раз тогда, когда есть фильтр по цене, без него — 1 тысяча запросов, но дело в том, что это по сути обычный вызов снипета как на большинстве магазинах с десятком тв полей…
alexandr.skyrda
30 января 2024, 23:02
0
поигрался еще с debugParser
вот параметр фильтра
&filters=`
    	ms|price:number,
    	tv|ms_type,
    	tv|ms_type-lamp,
    	tv|ms_style,
    	tv|ms_tsvet-stekla,
    	tv|ms_material,
    	tv|ms_shyrina:number,
    	tv|ms_vysota:number,
    	tv|ms_dlyna:number,
    	tv|ms_diametr:number,
    	tv|ms_kolich-lamp:number,
    	tv|ms_brand,
    `
ЕСЛИ убираю ms|price:number (т.е. фильтр цены), то время ответа примерно 3 секунды, что терпимо
НО с ms|price:number время ответа 50 секунд
как фильтр цены может так влиять на время ответа?
alexandr.skyrda
30 января 2024, 21:58
0
поставил debugParser
вот такой результат
на странице со всеми товарами (14к товаров) 51с (!) ответ
alexandr.skyrda
30 января 2024, 21:45
0
у меня нет remains…
если вы имеете ввиду плагин для учёта остатков
alexandr.skyrda
30 января 2024, 21:43
0
проблема была в версии php на которую ругался плагин SendIt. подняли с 7.3 до 7.4 — норм
спасибо за оперативную помощь @Артур Шевченко
alexandr.skyrda
30 января 2024, 20:59
0
после установки плагина сайт упал( HTTP ERROR 500
alexandr.skyrda
30 января 2024, 17:47
0
спасибо, наверное буду пробовать
alexandr.skyrda
30 января 2024, 17:00
0
да, проблема именно в mfilter
т.е. решения особо нет?
alexandr.skyrda
22 ноября 2023, 00:14
0
это я в курсе)
просто сам код не пойму как изменить, мб какую-то строку закомментировать?
alexandr.skyrda
28 июня 2023, 09:58
0
спасибо, как вариант…
alexandr.skyrda
15 марта 2023, 16:01
0
уже стоит, не помогает(
alexandr.skyrda
11 марта 2023, 18:06
0
спасибо большое
alexandr.skyrda
11 марта 2023, 01:10
0
писал же выше, что алиас считывает как строку и сортировка не правильна