Futuris

Futuris

С нами с 09 января 2016; Место в рейтинге пользователей: #291

Создание CRUD интерфейса вне админки

Приветствую, в этой заметке хочу поделится кейсом по созданию простого интерфейса за пределами админки для управления различными объектами как нативными (пользователи, ресурсы, заказы), так и кастомными, т.е. созданными под конкретный проект. Видео с результатом
Артур Шевченко
26 октября 2024, 21:25
modx.pro
2
493
+7

[HolidaysContent] Вывод контента в определённую дату и/или период времени

Всем привет, поступила банальная на первый взгляд задача, выводить в праздничные дни оформление тематическое… Всё бы ничего, просто написать сниппет который проверяет текущую дату и выводит чанк при совпадении… Но как быть с новым годом? Заказчик просит с 20.12 текущего года, по 10.01 соответственно следующего года показывать снег на сайте, тут уже нужно учитывать период, год начала и конца события.
Денис Усманов
24 октября 2024, 15:16
modx.pro
4
1 863
+7

Facade Laravel в Modx 2/3

Приветствую! В этом видео я хочу поделиться с вами способом упрощения работы с Modx Revolution, а именно — о том, как подключить Laravel Facade.

Многие разработчики сталкиваются с определенными сложностями при работе с Modx в Ide, и я не исключение. В поисках способов оптимизации процесса я обратил внимание на Laravel Facade — мощный инструмент, который может значительно упростить и ускорить разработку.

Андрей Степаненко
07 мая 2024, 09:34
modx.pro
2
1 485
+6

mfilter2 — создание фильтра по алфавиту и вывод результатов по первой букве поля pagetitle

Всем привет! Столкнулся с задачей реализовать фильтрацию по первой букве ресурса (из поля pagetitle) в моём случае это фильтрация пород собак, но готового решения не нашёл. Вдохновился документацией и очень похожим решением в этой статье. Может кому будет полезно.
Андрей Чаплыгин
08 апреля 2024, 12:04
modx.pro
5
526
+10

Конфликт зависимостей Guzzle в MODX 3

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

Итак, юзер @Futuris установил новенький mmxForms и словил Fatal Error 500 на сервере, при попытке создать форму.

В логах нашли вот такое сообщение:
PHP Fatal error:  
Declaration of Slim\Psr7\Uri::withScheme($scheme) must be compatible with
Psr\Http\Message\UriInterface::withScheme(string $scheme): Psr\Http\Message\UriInterface
in ...
Как же так? Почему у меня работает, а у него нет?
Василий Наумкин
22 марта 2024, 11:29
modx.pro
1
1 478
+19

Новый тип дополнений: mmxDatabase и mmxForms

Привет, друзья, давно не виделись!

Прошло уже более 3х лет, как я перестал активно работать с MODX и занялся своим проектом Vesp. За это время я создал много разных сайтов и библиотек, неплохо освоил современные технологии, а теперь возвращаюсь порадовать сообщество MODX.

Почти год назад я уже написал заметку о фундаментальной проблеме в 3й версии MODX, и даже предложил готовый вариант её решения, но никакой реакции это не вызвало. Судя по количеству закачек (целых 10!), никто даже не попробовал установить новое дополнение и посмотреть, как оно работает.

Плюсом к этому добавились мои разговоры с европейскими коллегами на недавнем митапе в Швейцарии, из которых я вынес, что никто ничего менять не планирует.

А у меня есть свободное время, так что я решил немного подорвать экосистему новым типом дополнений, которые должны быть настолько хороши, чтобы заставить вас использовать Composer с MODX 3.
Василий Наумкин
20 марта 2024, 14:55
modx.pro
8
1 665
+25

Реализация мультисайтовости на Modx Revo

Пытаюсь реализовать мультисайтовость в одной админке, с доменами на латинице проблем нет, а вот как примирить систему с кириллицей? Пример, у меня 3 сайта:

https:site1.ru
https:site2.ru
https: сайт3.рф

Использую плагин:

<?php

if ($modx->event->name != 'OnHandleRequest' || $modx->context->key == 'mgr') {return;}

$host = $_SERVER['HTTP_HOST'];

$q = $modx->newQuery('modContextSetting', array('key' => 'http_host', 'value' => $host));
$q->select('context_key');

$tstart = microtime(true);

if ($q->prepare() && $q->stmt->execute()) {
$modx->queryTime += microtime(true) — $tstart;
$modx->executedQueries++;
// Получаем ключ контекста
if ($context = $q->stmt->fetch(PDO::FETCH_COLUMN)) {
// Web инициализируется в index.php — на него переключаться не нужно
if ($context != 'web') {
$modx->switchContext($context);
}
}
}

Соответсвтенно, при использовании латинских доменов название контекста совпадает с http_host, а вот создать контекст на кириллице без глюков в modx не получается.
Сергей
14 марта 2024, 10:46
modx.pro
1
906
0

yandexMaps - не работает zoom

На заметку

Чтобы на странцие работал заданный в вызове zoom, нужно обязательно указать tvCoords, zoom, checkZoomRange, centerCoords.
tvCoords и centerCoords — это одно тв.поле.

[[!yandexMaps?
& id=`[[*id]]`
& tvCoords=`map`
& centerCoords=`[[*map]]`
& checkZoomRange=`0`
& zoom=`16`
]]
*уберите лишние пробелы после & при копировании.
adminixi
03 января 2024, 13:40
modx.pro
1
638
0

[msAltCart] Динамическая корзина для MiniShop2

Приветствую! Предлагаю вашему вниманию современный вариант полюбившегося многим компонента msMCD. Как водится постарался учесть большинство популярных кейсов использования корзины: миникорзина в шапке, динамическая корзина сбоку, всплывающее окно с последним добавленным товаров, основная корзина. Подробности под катом.
Артур Шевченко
25 декабря 2023, 20:16
modx.pro
3
934
+8

Добавление и удаление товара из корзины со страницы категории и товара

Периодически клиенты просят функционал, чтобы можно было изменять количество товара не только находясь в корзине, но и со страниц категорий и самого товара.
Поэтому поделюсь своим решением. Сразу отмечу, что оно не претендует на позицию идеального, так что если есть замечания и предложения, то с радостью их выслушаю.
ВАЖНО! У меня версия miniShop2 4.2.0. Код будет отличаться для версий ниже. Так например до 4.1.4 отличается метод генерации ключа товара, а до версии 4.1.0 методы add и change корзины возвращают только ключ товара, когда в более новых версиях также есть измененное кол-во товара и прочая информация о нем.

1) Итак, для начала создадим сниппет inCart, который будет отвечать за вывод HTML-разметки, в зависимости от того, есть товар в корзине или нет. И соответственно два чанка tpl.inCart.btn и tpl.inCart.btn.not
Dan
Dan
25 декабря 2023, 01:30
modx.pro
2
1 383
+9