Олег Сергеевич · 13 июля 2015, 09:48 Давно для себя написал инструкцию, чтобы ничего не забыть: 1. Cмотрим и копируем серверные пути с помощью phpinfo() 2. В админке: «Сайт» → «Обновить сайт» 3. В админке: безопасность — перезагрузить все права доступа и очистить кэш 4. В админке: безопасность — завершить все сеансы 5. Скопировать базу 6. Поменять серверные пути и название сайта в БД 7. Залить базу 8. Скопировать файлы со старого хостинга 9. Удалить всё внутри папки core/cache 10. Поменять пути и название сайта в файлах: /core/config/config.inc.php — доступы к базе, урл и пути /config.core.php /connectors/config.core.php /manager/config.core.php 11. Залить файлы на новый хостинг. После таких действий — никаких глюков. Вопросы / Перенес сайт, админка кривая 14 0 1
Василий Наумкин · 08 марта 2015, 15:25 Удаление юзера с id = 15. if ($user = $modx->getObject('modUser', 15)) { $user->remove(); } Ну, это если через админку тебя не устраивает. Вопросы / modx удаление пользователя7 2 +1 1
Михаил · 24 февраля 2015, 17:27 Для 301 с www на без www надо добавить в конфиг: server{ listen 80; server_name www.modx.kz; return 301 http://modx.kz$request_uri; } server { listen 80; server_name modx.kz; root /var/www/modx-kz/www; access_log /var/log/nginx/modx-kz-access.log; error_log /var/log/nginx/modx-kz-error.log; index index.php; rewrite_log on; location /core/ { $ deny all; $ } location / { try_files $uri $uri/ @rewrite; } location @rewrite { rewrite ^/(.*)$ /index.php?q=$1; } location ~ \.php$ { include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass backend-modx-kz; } location ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|bmp)$ { access_log off; expires 10d; break; } location ~ /\.ht { deny all; } } Хостинг / Правильный хостинг для MODX Revolution 226 0 1
Максим Кузнецов · 31 января 2015, 21:35 Помогу с решением. Вызываем сниппет Login: [[!Login? &loginTpl=`fastLoginTpl` &errTpl=`fastLoginError`]] Чанк формы для авторизации fastLoginTpl: <div style="display: none;" id="authErrors">[[+errors]]</div> <form class="loginForm" id="iWannaLogin" action="[[~[[*id]]]]" method="post"> <div class="login"> <input id="loginForm" name="username" class="roundInput" type="text" placeholder="Логин" title="Ваш логин"> </div> <div class="password"> <input id="passwordForm" name="password" class="roundInput" type="password" placeholder="Пароль" title="Ваш пароль"> </div> <input class="returnUrl" type="hidden" name="returnUrl" value="[[+request_uri]]" /> <input class="loginLoginValue" type="hidden" name="service" value="login" /> <div class="submit"> <a rel="nofollow" href="[[~17]]">Я - тупой, забыл пароль..</a> <input id="ajaxLoginButton" type="submit" name="Login" value="Войти" /> </div> </form> Чанк для вывода ошибки fastLoginError: [[+msg]] Скрипт js, обрабатывающий событие отправки формы (нужен подключенный jquery): <script type="text/javascript"> $(document).ready(function(){ $("#iWannaLogin").bind("submit", function() { $("#authErrors").text(""); //здесь можно допилить подсветку полей с ошибкой if ($("#loginForm").val().length < 1 && $("#passwordForm").val().length < 1) { $.jGrowl("Введите логин и пароль", {group: "m-Error"}); return false; } if ($("#loginForm").val().length < 1) { $.jGrowl("Введите логин", {group: "m-Error"}); return false; } if ($("#passwordForm").val().length < 1) { $.jGrowl("Введите пароль", {group: "m-Error"}); return false; } $.ajax({ type: "POST", cache: false, url: "[[~[[*id]]]]", data: $(this).serializeArray(), beforeSend: function(){ $("#ajaxAuth .closeBlock").css("display", "none"); $("#ajaxAuth .ajaxLoad").css("display", "block"); $("#ajaxLoginButton").prop("disabled", true); }, success: function(data) { $("#ajaxAuth .closeBlock").css("display", "block"); $("#ajaxAuth .ajaxLoad").css("display", "none"); var errMessage = $(data).find("#authErrors").text(); if(errMessage == ""){ window.location = "адрес для переадресации при успешной авторизации"; } else{ $("#authErrors").text(errMessage); $.jGrowl($("#authErrors").text(), {group: "m-Error"}); } }, complete: function(){ $("#ajaxLoginButton").prop("disabled", false); } }); return false; }); }); </script> — я еще подключил плагин jgrowl для отправления алертов. В его же вызове group: «m-Error» — класс для всплывающего бокса (красный, с ошибкой). Если jgrowl не нужен — то вместо него вставляем в поле для ошибок желаемый ответ. Пример: $("#authErrors").text("текст ошибки").css("display", "block"); #ajaxAuth .ajaxLoad — в моем примере форма с индикатором загрузки, которая появляется при обработке аякс-запроса. Вопросы / AjaxForm и Login 13 +3 5
Илья Уткин · 02 октября 2014, 13:53 Раз — «как зайти на сервер crontab -e»Два — «что такое crontab»Три — «как зайти на сервер по ssh» Вопросы / Кэш сайта огромен - как исправить? 8 +2 2
Василий Наумкин · 28 сентября 2014, 17:51 Зайти на сервер, там crontab -e И добавить команду 10 1 * * * rm -rf /home/твойлогин/www/core/cache Сохранить и выйти — кэш будет удаляться в 1:10 по времени сервера, каждые сутки. Вопросы / Кэш сайта огромен - как исправить? 8 +1 2
Василий Наумкин · 29 мая 2014, 16:19 &where=`{"createdon:>":"2014-01-01 00:00:00"}` Вопросы / Выборка за текущий год, месяц. 23 +3 2
Andrei D. · 23 апреля 2014, 19:52 Попросили сделать архив не фильтром, а отдельной страницей для каждого года, вот пример выборки мероприятий за 2010 год: [[!pdoPage? &element=`getTickets` &parents=`38` &includeTVs=`program-start` &tpl=`program-list-ru` &where=`["program-start BETWEEN \"2010-01-01\" AND \"2010-12-31\""]` &sortby=`program-start` &sortdir=`DESC` ]] Вопросы / Выборка pdoPage where по дате 12 0 2
Василий Наумкин · 11 сентября 2013, 05:37 Плагин на OnLoadWebDocument. При запросе проверять дату создания, и если больше 7 дней — удалять или отключать ресурс и отправлять на главную или на 404. То есть, юзеры сами будут инициировать отключение, cron не нужен. Вопросы / Автоматическое удаление 4 0 2
Denys Butenko · 10 октября 2012, 11:58 Для своих нужд изменял скрипт, сделал, чтобы при бэкапе пропускались директории /site/assets/cache — в которой хранятся phpthumbof кешированные картинки, /site/core/cache — системный кэш, /site/core/package — где хранятся архивы и распакованные пакеты. Размер бэкапа уменьшился на 60%. Хостинг / Сервер: резервное копирование и выгрузка в Dropbox 58 0 1
Возможно ли реализовать возможность предоплаты за доставку на сайте? Так ради этого мне и нужно это все, чтобы клиент платил сразу при оформлении заказа, чтобы избавить себя от мусорных заявок (когда человек оставляет заявку, а предоплату делать не ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
1. Cмотрим и копируем серверные пути с помощью phpinfo()
2. В админке: «Сайт» → «Обновить сайт»
3. В админке: безопасность — перезагрузить все права доступа и очистить кэш
4. В админке: безопасность — завершить все сеансы
5. Скопировать базу
6. Поменять серверные пути и название сайта в БД
7. Залить базу
8. Скопировать файлы со старого хостинга
9. Удалить всё внутри папки core/cache
10. Поменять пути и название сайта в файлах:
/core/config/config.inc.php — доступы к базе, урл и пути
/config.core.php
/connectors/config.core.php
/manager/config.core.php
11. Залить файлы на новый хостинг.
После таких действий — никаких глюков.
Ну, это если через админку тебя не устраивает.
Вызываем сниппет Login:
Чанк формы для авторизации fastLoginTpl:
Чанк для вывода ошибки fastLoginError:
Скрипт js, обрабатывающий событие отправки формы (нужен подключенный jquery):
— я еще подключил плагин jgrowl для отправления алертов. В его же вызове group: «m-Error» — класс для всплывающего бокса (красный, с ошибкой).
Если jgrowl не нужен — то вместо него вставляем в поле для ошибок желаемый ответ. Пример:
#ajaxAuth .ajaxLoad — в моем примере форма с индикатором загрузки, которая появляется при обработке аякс-запроса.
И добавить команду
Сохранить и выйти — кэш будет удаляться в 1:10 по времени сервера, каждые сутки.
При запросе проверять дату создания, и если больше 7 дней — удалять или отключать ресурс и отправлять на главную или на 404.
То есть, юзеры сами будут инициировать отключение, cron не нужен.