Русскоязычное сообщество MODX Revolution

Проблемы с modx.pro и документацией.

Последние недели сайт периодически отваливался по таймауту, иногда вместе с соседними проектами на том же сервере. Разобрался. Коротко: за сутки к modx.pro приходит 428 тысяч запросов при живой аудитории меньше тысячи человек в неделю. Расскажу, кто их делает и что с этим сделано.

Читать далее →

MiniShop3 1.14.2 - срочный securiy релиз и важное исправление доступов.

Вышел MiniShop3 1.14.2-beta1 — восемь исправлений, из которых шесть про безопасность, а одно вообще не давало работать: в админке магазина не мог ничего сделать никто, кроме первого пользователя сайта. Если у вас магазином занимается не владелец, а отдельный человек — обновляйтесь не раздумывая.

Читать далее →

MiniShop3 1.14.0: доменные события и исходящие вебхуки

В MiniShop3 1.14.0-beta1 появился механизм доменных событий и контракт для подключения исходящих вебхуков. Он позволяет отделить бизнес-логику магазина от логики интеграций и предоставляет разработчикам дополнений отдельную точку расширения.

Например, при смене статуса заказа может потребоваться обновить данные в CRM, передать информацию во внешнюю систему учёта или запустить собственную логику дополнения. Сервис изменения статуса не должен зависеть от конкретной CRM или способа передачи данных. Вместо этого он формирует доменное событие, которое может быть передано внутренним обработчикам и диспетчеру исходящих вебхуков.

В этой статье рассмотрим, зачем нужен механизм, как он устроен в v1.14.0-beta1 и какие возможности уже реализованы.
Читать далее →

ИИ-чат внутри сайта, который работает с данными самого сайта, через gtsAPI.

ИИ-чат внутри сайта, который работает с данными самого сайта, через gtsAPI.
ИИ-чат внутри сайта на MODX, который работает с данными самого сайта, через gtsAPI. Отвечает на вопросы по таблицам, разбирает приложенные файлы и правит записи — но только с подтверждением и с кнопкой отката. Доступ к данным идёт через gtsAPI, поэтому потолком остаются права того пользователя, от чьего имени открыт чат: ИИ не может больше, чем человек. Для сводных цифр есть второй путь — SELECT к базе отдельным пользователем MySQL с правом только на чтение, он описан ниже.

Читать далее →

[Tickets] Версия 1.14.1-pl — последние комментарии и аннотация

Вышла Tickets 1.14.1-pl — патч к версии 1.14.0 от 12 июля.

Основная работа в этом релизе — над TicketLatest: ускорили выборку последних комментариев, убрали лишнее чтение содержимого тикетов и исправили ошибки SQL при включённом ONLY_FULL_GROUP_BY. Также добавили настройку длины автоматической аннотации, расширили параметры TicketForm и исправили несколько проблем, обнаруженных после предыдущего релиза.
Читать далее →

PageBuilder — визуальный конструктор страниц для MODX 3

PageBuilder — визуальный конструктор страниц для MODX 3


Собирайте страницы из готовых секций, редактируйте контент в удобном интерфейсе MODX и публикуйте изменения без перезаписи стандартного поля content.

PageBuilder превращает страницу MODX в структуру из независимых секций: первый экран, текст, карточки, преимущества, FAQ, отзывы, галерея, формы, товары и другие блоки.

Редактор работает в менеджере MODX, а вывод остаётся под контролем разработчика: каждая секция имеет собственную структуру данных и шаблон Fenom.
Читать далее →

EasyCookies - cookie-баннер, который знает про ваши счётчики

EasyCookies - cookie-баннер, который знает про ваши счётчики


Вот и последняя статья серии, в которой уже были modSizeControl, EasySettings и EasyFavicon. Как и обещал, представляю вашему вниманию компонент для баннера cookie. Причём не того баннера, который просто висит внизу страницы с кнопкой «Понятно», пока Метрика и Analytics уже давно всё записали, а такого, который сам решает, когда счётчикам можно работать.

Редактор профиля с превью баннера

Обычно всё выглядит так: находим скрипт баннера, вставляем в шаблон, пишем «Мы используем cookie», а коды счётчиков остаются там же, где и были. Посетитель жмёт «Отклонить», а Вебвизор в это время уже смотрит, как он это делает. Формально баннер есть, по факту — декорация.

В EasyCookies счётчики живут не в шаблоне, а в профиле баннера. Баннер сам их запускает, когда посетитель разрешил нужную категорию, а при отказе удаляет их cookie. В основе — отличная библиотека CookieConsent Ореста Биды, так что с внешним видом и доступностью всё в порядке.

Читать далее →

EasyFavicon - фавиконки из RealFaviconGenerator не выходя из админки

EasyFavicon - фавиконки из RealFaviconGenerator не выходя из админки


Приветствую всех форумчан! После двух бесплатных компонентов — modSizeControl и EasySettings — пришло время первого платного. Встречайте компонент, который избавляет от самой скучной рутины при запуске сайта — установки фавиконки.

Список профилей EasyFavicon

Давайте честно, как это обычно происходит: открываем RealFaviconGenerator, загружаем логотип, настраиваем, скачиваем архив, распаковываем, заливаем по FTP, копируем теги в шаблон, а потом ещё правим site.webmanifest, потому что там MyWebSite вместо названия сайта. А через полгода заказчик просит новогоднюю фавиконку, и всё по новой. А после Нового года — обратно.

EasyFavicon делает всё это из админки:

  1. Выбираете картинку в медиа-хранилище MODX.
  2. Настраиваете фавиконку в родном редакторе RealFaviconGenerator.
  3. Возвращаетесь в MODX, а там файлы уже лежат в каталоге сайта, манифест заполнен, а разметка стоит в <head> каждой страницы.
Никаких архивов, FTP и копирования тегов.

Читать далее →