Лёша

Лёша

С нами с 09 марта 2022; Место в рейтинге пользователей: #130

Не парсится чанк письма в miniShop при использовании ZoomX

Здравствуйте, при использовании ZoomX вместо письма при смене статуса заказа приходит код чанка. Не работает ни Smarty, ни Fenom.
Раньше работал такой плагин:
<?php
switch ($modx->event->name) {
    case 'msOnChangeOrderStatus':
        $corePath = $modx->getOption('zoomx_core_path', null, MODX_CORE_PATH . 'components/zoomx/');
        $modx->setOption('pdoTools.class', 'pdoToolsZoomx');
        $modx->setOption('pdotools_class_path', $corePath . 'pdotools/');
        $modx->setOption('pdoFetch.class', 'pdoFetchZoomx');
        $modx->setOption('pdofetch_class_path', $corePath . 'pdotools/');
        include $corePath . 'pdotools/pdotoolsadapter.php';
        break;
}
Сейчас с ним при смене статуса происходит ошибка, статус не меняется. Видимо после обновления ZoomX перестало работать.
Ещё вместо темы письма приходит [[%ms2_email_subject_new_user]].
При оформлении заказа всё нормально, срабатывает Smarty. Fenom на сайте выключен.
Лёша
13 мая 2022, 03:22
modx.pro
44
0

Числовые значения в параметре optionFilters в msProducts

Здравствуйте, как можно сделать, чтобы корректно работал фильтр по числовым полям в miniShop?
[optionFilters] => {"kcal:<=":69,"kcal:!=":""}
выводит товар, у которого значение kcal = 400. Использовать join и where? optionFilters тут не подойдёт?
Лёша
30 апреля 2022, 09:49
modx.pro
78
0

Ошибка при изменении поля в форме заказа на minishop2-3.0.0-pl

Здравствуйте, при post запросе к assets/components/minishop2/action.php сервер возвращает ошибку 500. Это происходит при изменении поля в форме заказа.

Ответ от сервера: {«success»:false,«data»:[],«errors»:{«code»:500,«title»:«Error 500: Internal Server Error»,«message»:«Call to a member function set() on null»},«meta»:{«total_time»:«0.1038 s»,«query_time»:«0.0012 s»,«php_time»:«0.1026 s»,«queries»:3,«source»:«cache»,«memory»:«8 192 KB»}}
Ответ возвращает ZoomX, но проблема не в нём, так как на стабильной версии miniShop всё работает.

Подскажите, в чём может быть дело?
Лёша
26 апреля 2022, 21:26
modx.pro
346
0

Изменение количества товара в корзине после добавления с помощью ZoomX и Alpine.js

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

На бэкенде мы создадим метод, который добавляет товар, если его нет в корзине, изменяет его количество, удаляет, если передано количество 0. На фронтенде создадим метод для его вызова.
Лёша
24 апреля 2022, 19:51
modx.pro
1
273
+8

Долго создаются товары через api

Делаю выгрузку товаров. Товары создаются около секунды, что много, учитывая, что нужно выгрузить их более 7000. В чём может быть причина? Категории создаются гораздо быстрее, способ примерно такой же.
Лёша
26 марта 2022, 15:42
modx.pro
142
+1

Разница между newQuery, command('update'), set и getOblect, set

Наткнулся на такую конструкцию:
$c = $modx->newQuery('Objekt');
$c->command('update');
$c->set(array(
        'name'  => $name
));
$c->where(array(
        'id'    => $id,    
));
$c->prepare();
$c->stmt->execute();
Раньше всегда использовал
$obj = $modx->getObject('Object');
$obj->set('prop', 'value');
$obj->save();
Подскажите, в чём разница? Предполагаю, что в скорости. Можно ли первым способом создавать ресурсы?
Лёша
26 марта 2022, 09:56
modx.pro
154
0

Начались проблемы с онлайн-оплатой от Сбера

Недавно на нескольких сайтах начались проблемы с онлайн-оплатой Сбера: не приходит ответ от сервера.
Используется самописное решение, но оно работало на многих сайтов, раньше проблем не было.
Проблема возникает не всегда, только у некоторых пользователей, какой-то закономерности пока выяснить не удалось. У меня и других разработчиков в компании всё работает.
Пользователь прислал скриншот, на нём видно, что используется vpn. Попробовал сделать заказ с включенным vpn (Browsec) — оплата не сработала. Хотя я не понимаю, причём тут vpn — запрос к серверу Сбера же с хостинга идёт.

Не начались ли на ваших сайтах проблемы с оплатой? Может ли это быть связано с использованием vpn?
Лёша
22 марта 2022, 01:46
modx.pro
101
0

Можно ли сделать автоматическое добавление столбцов в таблицу?

Делаю выгрузку из 1С (Minishop не используется). Раньше использовал TV для свойств товара, но сейчас, в целях оптимизации, думаю сделать для свойств отдельную таблицу. Можно ли как-то через api в неё столбцы добавлять, чтоб при этом map.inc файл обновлялся?
Есть ещё вариант для свойств товара использовать MIGX-таблицу, но тогда фильтры делать не очень удобно.
Как считаете, какие варианты хранения свойств товара наиболее оптимальны для больших интернет-магазинов?
Лёша
21 марта 2022, 11:07
modx.pro
124
0

Как подружить MODX и Smarty шаблоны в ZoomX

Статья неактуальна, в 3.4.2 автор поправил кэширование, теперь можно использовать статический шаблон и включать в него smarty-шаблон через include.

Сразу скажу, что с фреймворками не работал, поэтому возможно есть более оптимальное решение. Если знаете — напишите)

Сначала решил использовать статические элементы — в MODX-шаблоне прописывал путь до Smarty-шаблона. Но потом обнаружил, что в таких шаблонах сниппеты запускаются несколько раз. Из сниппета вывел в журнал ошибок $modx->resource — первый раз загружается нужный ресурс, а потом 2 раза загружается ресурс «страница не найдена». Причину так и не понял. Ещё обнаружил, что если у ресурса нет роута, то кэш Smarty не работает. Поэтому придумал такой костыль.
Лёша
17 марта 2022, 01:48
modx.pro
356
+1