Готовые решения

Buggregator (Ray) для MODX Revolution 2/3 или по-простому реал-тайм логирование

В данном видео познакомимся с реал-тайм логгером buggregator и его интеграцией в MODX Revolution 2/3 версий

Семён Кудрявцев
23 июля 2022, 11:11
modx.pro
2
1 008
+14

modxYMLprice - генератор прайса Yml Yandex (UP)

Компонент modxYMLprice
modxymlprice-2.2.128-pl
Git: github.com/vectorserver/modxYMLprice
Demo: golodnaya-panda.ru/modxymlprice.xml

PS: компонент сыроват, приму ваши предложения)

Данный компонет предназначен дла генерации XML прайса в формате Yandex YML (рис. 1)

vectorserver
13 июля 2022, 14:01
modx.pro
1 240
+5

Решение проблемы "Добавление комментариев закрыто. MODx Revolution, компонент quip"

Сообщение от модуля Quip комментариев:
Добавление комментариев закрыто. MODx Revolution, компонент quip

Как решить проблему —
Зайти в Сниппет: QuipReply(), вкладка параметры, разрешить редактирование, находим closeAfter поле, и вместо 14, пишем 99999999999. Сохранить набор параметров, Сохранить. Очистить кэш.

Повторяем толе самое для Сниппет: Quip ().
Теперь форма ввода комментариев не пропадет спустя 14 дней.
Игорь
11 июля 2022, 15:18
modx.pro
1 090
-2

Как сделать мультикатегории на MODX с TV-шкой

Всем привет.
Недавно глубоко озадачился этим решением и в результате которого нехитрым (почти) способом можно сделать мультикатегории.
Подходит данное решение для сайтов у которых, наверное не более 5..10к товаров. На больших, думаю, будет тормозить, (не проверял) так что обратная связь приветствуется.
Алексей Смирнов
10 июня 2022, 15:54
modx.pro
2
2 365
+5

Remove Duplicates MODX

Может кому пригодится.)
Компонент ищет дубликаты ресурсов, в разных контекстах!
PS^ версия сыровата, JS накидал на коленке (эффекты и тп пока отсутствуют).

Есть два варианта обработки ресурсов:
  • Перемещение в корзину
  • Создание нового алиаса с прфиксом ID ресурса.

Скриншоты:

vectorserver
05 июня 2022, 23:56
modx.pro
4
1 071
+5

Возвращяем привычный вид страницы после установки пакета SEO Suite

Разработчик sterc, выпустивший два известных модуля для СЕО-шников: SEO Tab и SEO Pro — сделал новый пакет.
Называется он: SEO Suite. Данный пакет объединил в себе два выше указанных пакета + был полностью переписан весь код и добавлены новые плюшки.
Всё бы ничего, но как по мне он очень уж сильно меняет внешний вид страницы в админке. Стало неудобно =(
Поэтому не долго думая — вернул прежний вид, но при этом оставив новый функционал.

Дмитрий Танцирев
05 июня 2022, 20:07
modx.pro
4
1 317
+2

[СДЕЛАЙ САМ] Ajax Регистрация, Авторизация, Сброс пароля, Редактирование профиля

Задача: сделать ajax регистрацию, авторизацию, сброс пароля и редактирование пользователя, используя минимум сторонних компонентов.

ИСПОЛЬЗУЙТЕ КОМПОНЕНТ SENDIT

Почему минимум? Ну часть из тех компонентов, что реализуют подобный функционал, платная (Office, ajaxLogin) и бюджеты есть не всегда на них есть. Некоторые (ajaxLogin) в данный момент не доступны из-за смерти автора. Общий недостаток большинства компонентов это то, что они загружают дополнительные скрипты и стили, что порой приводит к необходимости дополнительно оптимизировать сайт. Компонент Login не работает по ajax. Однако это можно обойти , но runSnippet запустит много всего и не факт что это всё нужно в данный момент. Поэтому предлагаю своё решение.
Нам понадобится:
1. AjaxForm;
2. FormIt;
3. Этот репозиторий.

Порядок действий:
1. Скопировать core/elements/snippets/ajaxidentification.class.php.
2. Создать в админке сниппеты
2.1 AjaxIdentification (код лежит в core/elements/snippets/hooks/AjaxIdentification.php);
2.2 userExists (код лежит в core/elements/snippets/validators/userExists.php);
2.3 userNotExists (код лежит в core/elements/snippets/validators/userNotExists.php;
2.4 ActivateUser (код лежит в core/elements/snippets/ActivateUser.php) // этот можно вызывать прям из файла если хотите.
3. В вывоз AjaxForm в параметр hooks первым значением добавить AjaxIdentification, сюда же добавить параметр method ( register — регистрация, login — авторизация, forgot — восстановление доступа, update — обновление данных).
4. В js на событие af_complete добавить редирект на нужные страницы. Ссылки можно получать
из мета-тегов с именами типа loginSuccessUrl.
Всё. Далее немного потока сознания и пояснений.
Артур Шевченко
16 мая 2022, 13:33
modx.pro
2 536
+1

Кастомизация поля input[type=number] или поля количество

В интернет много всяких решений, но часть из них обладают избыточной функциональностью, часть требует сторонние библиотеки, типа jQuery, а простые и лёгкие решения мне не попадались, это наверное потому что я искать не умею))) В общем как бы там ни было, пусть в интернете появится ещё одно решение, вдруг кому-то пригодится. Все подробности о том, как пользоваться в репозитории.
Артур Шевченко
10 марта 2022, 23:29
modx.pro
4
1 092
+2

Билдер SQL запросов для modx, minishop2 и TV

Всем привет, просили меня недавно сделать выгрузку со старого сайта на modx с более чем 200к товаров, т.к. я уже давно не работал с modx, абсолютно забыв методы API, а также помня, насколько медленно и ресурсозатратно оно работает было решено писать SQL напрямую и все бы ничего, пока я не увидел структуру tv полей. Руками писать SQL с выборкой необходимых TV было адским адом, и было решено за часик накидать мини билдер SQL запросов

Получился примерно такой в использовании билдер, по мне покрывает 100% моих задач в формировании SQL для выгрузок из modx & ms2:
$builder = new SimpleBuilder();
$builder->addResourceFields('id', 'pagetitle', 'longtitle')
    ->addMs2Fields('article', 'price')
    ->addTvFields('price_opt', 'product_time', 'valute', 'remains', 'product_tax')
    ->where('deleted', '=', false)
    ->where('published', '=', true)
    ->where('class_key', '=', 'msProduct')
    ->where('remains', '!=', 0)
    ->whereNotNull('remains')
    ->whereIn('id', [18559, 18560])
    ->limit(1)
    ->offset(1)
;
$sql = $builder->sql();

$products = $modx->query($sql)->fetchAll(PDO::FETCH_ASSOC);
Под катом код и результат SQL который формирует билдер
Если хочется сразу к коду
Pavel Zarubin
24 февраля 2022, 02:10
modx.pro
4
1 414
+10

AjaxForm без jQuery

Приветствую тебя дорогой читатель. Давно хотел это сделать и наконец-то сделал — теперь для работы AjaxForm не нужен jQuery.

ТЕПЕРЬ ДЛЯ ЭТОГО НУЖНО ПРОСТО ИСПОЛЬЗОВАТЬ SENDIT

Для этого нужно
1. Перейти по ссылке.
2. Заменить содержимое папок core/components/ajaxform и assets/componentns/ajaxform/ данными из репозитория.
3. Заменить код сниппета AjaxForm кодом из репозитория.
Если будут ошибки пишите в комментарии, а под катом немного о нюансах.
Артур Шевченко
14 февраля 2022, 21:53
modx.pro
6
2 347
+14