Futuris
С нами с 09 января 2016; Место в рейтинге пользователей: #287Конфликт зависимостей Guzzle в MODX 3
Сначала хотел просто обновить предыдущую заметку, но решил, что это достойно более широкого обсуждения.
Итак, юзер @Futuris установил новенький mmxForms и словил Fatal Error 500 на сервере, при попытке создать форму.
В логах нашли вот такое сообщение:
Итак, юзер @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 ...Как же так? Почему у меня работает, а у него нет?
Новый тип дополнений: mmxDatabase и mmxForms
Привет, друзья, давно не виделись!
Прошло уже более 3х лет, как я перестал активно работать с MODX и занялся своим проектом Vesp. За это время я создал много разных сайтов и библиотек, неплохо освоил современные технологии, а теперь возвращаюсь порадовать сообщество MODX.
Почти год назад я уже написал заметку о фундаментальной проблеме в 3й версии MODX, и даже предложил готовый вариант её решения, но никакой реакции это не вызвало. Судя по количеству закачек (целых 10!), никто даже не попробовал установить новое дополнение и посмотреть, как оно работает.
Плюсом к этому добавились мои разговоры с европейскими коллегами на недавнем митапе в Швейцарии, из которых я вынес, что никто ничего менять не планирует.
А у меня есть свободное время, так что я решил немного подорвать экосистему новым типом дополнений, которые должны быть настолько хороши, чтобы заставить вас использовать Composer с MODX 3.
Прошло уже более 3х лет, как я перестал активно работать с MODX и занялся своим проектом Vesp. За это время я создал много разных сайтов и библиотек, неплохо освоил современные технологии, а теперь возвращаюсь порадовать сообщество MODX.
Почти год назад я уже написал заметку о фундаментальной проблеме в 3й версии MODX, и даже предложил готовый вариант её решения, но никакой реакции это не вызвало. Судя по количеству закачек (целых 10!), никто даже не попробовал установить новое дополнение и посмотреть, как оно работает.
Плюсом к этому добавились мои разговоры с европейскими коллегами на недавнем митапе в Швейцарии, из которых я вынес, что никто ничего менять не планирует.
А у меня есть свободное время, так что я решил немного подорвать экосистему новым типом дополнений, которые должны быть настолько хороши, чтобы заставить вас использовать Composer с MODX 3.
Реализация мультисайтовости на 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 не получается.
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 не получается.
yandexMaps - не работает zoom
На заметку
Чтобы на странцие работал заданный в вызове zoom, нужно обязательно указать tvCoords, zoom, checkZoomRange, centerCoords.
tvCoords и centerCoords — это одно тв.поле.
Чтобы на странцие работал заданный в вызове zoom, нужно обязательно указать tvCoords, zoom, checkZoomRange, centerCoords.
tvCoords и centerCoords — это одно тв.поле.
[[!yandexMaps?
& id=`[[*id]]`
& tvCoords=`map`
& centerCoords=`[[*map]]`
& checkZoomRange=`0`
& zoom=`16`
]]
*уберите лишние пробелы после & при копировании. [msAltCart] Динамическая корзина для MiniShop2
Приветствую! Предлагаю вашему вниманию современный вариант полюбившегося многим компонента msMCD. Как водится постарался учесть большинство популярных кейсов использования корзины: миникорзина в шапке, динамическая корзина сбоку, всплывающее окно с последним добавленным товаров, основная корзина. Подробности под катом.
[FlatFilters] Первая бета ждёт смелых и отчаянных.
Приветствую! Мы строили, строили и наконец построили. Рад представить вашему вниманию первого реального конкурента mFilter2. Пока это только бета версия, поэтому кому-то может показаться, что функционала маловато, пожелания принимаются в комментариях.
ecommerce.js - Электронная коммерция (Яндекс.Метрика и Google Analytics) для сайтов на базе MODX + miniShop2
Привет!
Хочу поделиться js скриптом, который позволяет передавать данные электронной коммерции в системы аналитики Яндекс.Метрика и Google Analytics.
Из особенностей отмечу то, что мое решение выполнено не в виде дополнения для MODX, а в виде одного js файла и не имеет в своем составе php кода (сниппетов и т.п.). Также я применил, пожалуй, не самый стандартный подход в том, как будут получаться данные о товарах на страницах сайта.
Хочу поделиться js скриптом, который позволяет передавать данные электронной коммерции в системы аналитики Яндекс.Метрика и Google Analytics.
Из особенностей отмечу то, что мое решение выполнено не в виде дополнения для MODX, а в виде одного js файла и не имеет в своем составе php кода (сниппетов и т.п.). Также я применил, пожалуй, не самый стандартный подход в том, как будут получаться данные о товарах на страницах сайта.
Встречайте VSCode IntelliSense for MODX
Представляю вашему вниманию расширение для VSCode, которое обеспечивает широкий спектр инструментов для работы с MODX и Fenom. Этот плагин значительно упрощает процесс разработки ваших проектов, делая его более эффективным и удобным.
Установить бесплатно.
Установить бесплатно.
[FlatFilters] Первые итоги работы.
Приветствую, коллеги! Вам известно, что на данный момент пригодной для коммерческого использования альтернативы mFilter2 нет. Сам mFilter2 прекрасен, но когда на сайте несколько десятков тысяч товаров он начинает жутко тормозить. На данный момент у меня готов рабочий прототип нового компонента, который я назвал FlatFilters. Подробности идеи под катом.
phpThumbOf modx 3
Если кому-то требуется, что бы был ресайз фотографий на modx 3 по средствам phpThumbOf, то необходимо внести правки.
В сниппете удалить
И заменить строчку через сервер в файле root>/core/components/phpthumbof/model/phpthumbof/phpthumbof.class.php. #193
Я для себя искал решение, может кому пригодится.
В сниппете удалить
if (!$modx->loadClass('modPhpThumb',$modx->getOption('core_path').'model/phpthumb/',true,true)) {
$modx->log(modX::LOG_LEVEL_ERROR,'[phpThumbOf] Could not load modPhpThumb class.');
return '';
}
И заменить строчку через сервер в файле root>/core/components/phpthumbof/model/phpthumbof/phpthumbof.class.php. #193
$this->phpThumb = new MODX\Revolution\modPhpThumb($this->modx);
ИсточникЯ для себя искал решение, может кому пригодится.