Евгений Дурягин
С нами с 15 декабря 2012; Место в рейтинге пользователей: #3322 часа назад
Решил, зашёл в контексты, web, и там создал новый контекст site_url, и там внутри добавил значение своего сайта на https.
Имя и ключ: site_url
Зна...
При добавлении <base href="[[++site_url]]"/>, не работают стили. 6
Вчера в 23:47
Искал ответ примерно на тот же вопрос. Мне нужно было сделать file.php который будет выводить определенный ресурс из modx. Вот, может, кому то пригоди...
Как получить HTML код всей страницы в сниппете? 10
Вчера в 16:14
Путем ковыряния несколько часов поля, что взял заказ, с кучей костылей. Много старых пакетов написаных еще в 14 году, которые не работаю php 5.6 стоял...
Не добавляется запись в MIGX 1
Вчера в 12:48
Установил компонент. PHP 7.4, Modx 2.8.4. Созданные кастомные поля юзера не отображаются, в логе ошибка:
No foreign key definition for parentClass: e...
ExtraFields. Дополнительные поля для ресурса (modResource) и пользователя (modUserProfile). 33
Вчера в 11:21
[2024-05-13 11:18:51] (ERROR @ Unknown0) PHP warning: Unknown: Cannot call session save handler in a recursive mannerЗапись в базу работает, н...
Еще немного про сессии MODX, компонент smartSessions 73
Вчера в 09:02
На странице есть описание, скриншоты и видео ролик. Посмотрите, есть ли там нужные вам функции.
Есть чтото в духе StarRating или LikeDislike для оценок пользователями для MODX3? 5
12 мая 2024, 18:28
Спасибо, если вдруг не получится воспроизвести – пиши, сделаю демку
PageBlocks. Удобное управление контентом сайта. 28
12 мая 2024, 13:48
Ну так они у тебя такие же будут если ты не будешь использовать дополнение
StaticElementsLive 29
12 мая 2024, 06:41
Так ты сделай нормальное composer дополнение для MODX — и пусть его себе ставит кто хочет, вместе с остальными mmx-дополнениями. Древний транспортный ...
Facade Laravel в Modx 2/3 20
Ну если кто и будет это делать, то просто создать еще один сниппет, который понимает парметры FormItAutoResponder и добавляет еще одно письмо в очередь.
Я для своего хука так и делал. Через FormIt можно указать несколько получателей в параметре &emailTo, я на каждого создавал отдельное письмо в очереди.
Просто убрал все лишнее что сейчас не нужно было мне и адаптировал под компонент.
И он на первое время сойдет, но для полноценной замены желательно чтобы поддерживал все параметры FormIt, такие как скрытые копии, html или текст сообщение, вложения и прочее.
docs.modx.com/extras/revo/formit/formit.hooks/formit.hooks.email
Можно не все их в таблицу добавлять, оставить только важные, которые отображать в компоненте, а остальные в поле properties в json-виде, так расширять можно будет без правки схемы. Главное чтобы скрипт отправки поддерживал.
И у FormIt есть еще хук FormItAutoResponder docs.modx.com/extras/revo/formit/formit.hooks/formit.hooks.formitautoresponder
Это бывает полезно для обратной связи когда email уходит менеджеру, а пользователю дополнительно отправляется другой email со своим шаблоном «Спасибо за ваш отзыв. Менеджер уже занимается вашим вопросом»
Допустим лимит стоит 50 писем за раз, а запуск скрипта каждую минуту.
В большинстве случаев все работает и 50 писем успевают отправится за 1 минуту.
Но в какой-то час SMTP или сеть начнет тормозить и отправка станет занимать 3-5 сек.
За минуту успеют отправится только 20 писем, затем запуститься второй скрипт и начнет отправлять оставшиеся 30 письма, т.к. они еще не помечены как отправленные. В итоге пользователю будут приходить дубли.
Вот сейчас отправлять нужно от домена заказчика, а чтобы соблюсти все DKIM, SPF и прочее без правки DNS вариант только через доступ по SMTP.
А коннект к SMTP визуально секунды 3 и это тормозит на фронте.
Плюс опять же возможны какие-то лимиты по кол-ву в час, одновременных соединений и тп.
И у пользователя возникает ошибка и форма не отправляется.
Просто в вызове поменять хук на email_queue (или свое название сниппета)
Поддержку вложений не делал, т.к. не было необходимости.
И не все параметры FormIt поддерживает (например emailHtml, emailToName, emailCC, итд), т.к. компонент их не учитывает.
Где-то у них очень давно на старом сайте или форуме была расшифровка
Но не на всех хостингах эта переменная передается.
Можно принудительно включить в файле config.inc.php
github.com/modxcms/revolution/blob/2.x/core/docs/config.inc.tpl#L52
Прописать на этой строке $isSecureRequest = true;
Аналог Digital Ocean от Selectel. Даже конфигурации серверов один в один ))
Но по функционалу пока отстают: бэкапов нет, снапшотов нет итд
Причину отмены можно указывать в комментарии заказа, который вставить в шаблон письма.
Если клиенту не нравится что заказ отменен, то создайте свои статусы на разные случаи с уникальными шаблонами: уточнение данных, ожидание поступления итд.
Например, в комментарии заказа указать что товар будет на складе через 3 дня и поменять статус на «ожидание поступления». Для каждого статуса можно указать чанк письма, где и вывести комментарий.
Вроде оно modx.com/extras/package/updater
Конфигурация по умолчанию: 1 ядро, 512 Mb RAM, 5 Gb SSD, 792 руб./мес.
При авторизации пользователя отправлять ему смс с кодом, который он должен ввести на сайте.
Для пользователя неудобство будет только если вдруг авторизация слетела или он решил авторизоваться в другом браузере/устройстве/компе.
Если он будет передавать логин и пароль другим, то еще дополнительно нужно будет сообщать коды из смс при каждой авторизации. Думаю это быстро ему надоест.
Можно отправлять и по e-mail, т.к. отправка смс платная, но пользователь может создать спец. ящик и сообщать доступ к нему вместе с логином и паролем от сайта, или использовать временный ящик типа tempinbox.com
Единственные варианты сейчас это
1. Закомментить эту строчку в процессоре
2. Перевести документы (хотя бы большую часть, например товары) на использование Freeze URI. Эти документы refreshUri не обновляет
3. Оптимизирвать RefreshUri и отправить Pull Request :)
Вот обсуждение зачем они его добавили github.com/modxcms/revolution/issues/9129
Но самое интересное то, что Jason Coward писал, что такие вещи нужно запускать из командной строки на больших сайтах forums.modx.com/thread/85073/how-can-i-recalculate-uri-in-a-large-site-content-with-more-than-1-000-000-entries-without-server-timeout-for-the-script#dis-post-469206 Ну а теперь это при каждой очистке кэша