Николай Савин

Николай Савин

С нами с 06 июня 2015; Место в рейтинге пользователей: #5
Николай Савин
18 февраля 2022, 10:41
0
PR в таком виде у тебя не примут. Нет смысла слать.
Николай Савин
18 февраля 2022, 08:39
0
Я еще не встречал хостинга, на котором не было бы панели управления кроном или просто доступа к crontab.
Какие 4 часа? О чем вы?
Если задача отправить письмо о новом заказе то:
Проверить таблицу очередей. Если есть необработанная запись ОДНА — взять номер заказа, сформировать письмо о заказе — отправить его.

Если задача отправить письмо о регистрации клиента то:
Получить из таблицы очередей ID клиента — составить письмецо, отправить его.

Тут секунды 2 работы в худшем случае.
Николай Савин
18 февраля 2022, 08:27
0
Зачем так сложно? Задания очередей можно писать в таблицу базы данных. Я обычно использую simpleQueue. Есть также встроенный механизм очередей в MODX.
Для выполнения заданий запускаете ежеминутно крон, который будет по одной записи за раз дергать и выполнять.
Николай Савин
18 февраля 2022, 08:05
0
Кстати в будущих версиях компонента механизм очередей будет уже в ядре.
Николай Савин
18 февраля 2022, 08:03
0
Вообще-то да. Ровно та же проблема при отправке заказа в CRM какой-нибудь.
Решение тоже общее. Нужно использовать очереди. И вместо отправки заказа просто записывать задачу в очередь. Тогда нагрузки не будет никакой. Ну а очереди читать и выполнять, как фоновый процесс.
Николай Савин
18 февраля 2022, 07:58
0
Вам нужно, чтобы отправлялось письмо о факте регистрации?
Я писал заметку на эту тему уже
modx.pro/development/16620
Николай Савин
18 февраля 2022, 07:49
0
На сегодняшний день фоновая регистрация пользователя вшита в процесс оформления заказа. Для того чтобы логика была другой нужно «колотить костыли».
Николай Савин
18 февраля 2022, 06:17
+1
А почему у тебя в объекте методы внутри метода? Это же нелогично. Вынеси их в корень объекта. Для чего нужна вложенность?
И я правильно понимаю, что в твоем варианте оригинальный ajaxForm все равно нужно подключать, а потом этой штукой перезаписывать метод initialize?
Николай Савин
17 февраля 2022, 21:42
0
Дальше вам видимо нужно обратиться в раздел «Работа» с задачей сделать анализ или сразу решить вопрос.
Вообще установка SSL сертификата, редирект — не влияют на скорость загрузки сайта.
Николай Савин
15 февраля 2022, 21:18
+2
У меня есть мобильное приложение, которое как раз через ZoomX к минишопу прикручено. В основном буду опираться на этот опыт. Возможно позже я покажу как изготовить и запустить и само мобильное приложение. Получился бы полноценный курс Мобильное приложение + MODX
Николай Савин
10 февраля 2022, 18:52
0
Не рекомендую писать одно и то же в разных темах. Это чревато санкциями.
Николай Савин
10 февраля 2022, 11:27
0
Может jquery не подключен в шаблоне?
Николай Савин
05 февраля 2022, 14:06
+2
Дополню. В планах адаптировать ms2 под тройку, чтобы он работал сразу на обеих платформах. И далее уже спокойно работать над отдельной версией которая точно будет, и своим выходом похоронит и второй минишоп, и modx 2. План работ и конкретные изменения для ms3 давно составлены.
Николай Савин
04 февраля 2022, 11:09
0
Откуда у вас информация про такую версию? Кто бы ее делал?
В официальном репозитарии компонента последняя версия 1.13 выпущенная два года назад.
Николай Савин
04 февраля 2022, 09:50
0
Здравствуйте. Компонент Tickets не работает с MODX3.
Николай Савин
30 января 2022, 10:49
+1
Я на всякий случай уточню. Вообще, то есть метод
$ms->cart->remove($key);
Но в вашем конкретном случае мне показалось, что больше подойдет приведенный выше код.
Потому что все равно корзину перебирать и проверять наличие товара.
Николай Савин
30 января 2022, 10:45
+1
Пожалуйста. Пользоваться поиском довольно полезно.
Николай Савин
30 января 2022, 10:45
+1
Товары находятся не в заказе, а в корзине.
Корзина это массив данных. Получить его можно через метод
$ms2->cart->get();
Далее просто удалите ненужный элемент массива и обновите корзину через
$ms->cart->set();
Николай Савин
30 января 2022, 10:43
+1
Ну в целом выполнение задачи не меняется. Подберите событие, которое срабатывает перед созданием заказа, напишите плагин, реагирующий на такое событие.
Николай Савин
30 января 2022, 10:14
+2
У вас некорректная логика. Такую ошибку нужно выводить при попытке положить товар в корзину и не давать это сделать изначально.
Здесь этот вопрос обсуждался неоднократно. Воспользуйтесь поиском.
Вот например modx.pro/help/9381

Функционал ошибок есть. Основан на плагинах. На каждое действие (почти) есть свое событие.
Список событий найдете в документации. Создаете плагин на нужное событие. Выполняете проверку — возвращаете нужный ответ