1 час назад
Полностью согласен с недостатками реактивных фреймворков, описанных в заметке, думаю 100мс на инициализацию бекенда это очень много — что-то не так с ...
Плюсы и минусы Vue и gtsAPI 3
5 часов назад
Правильный вариант из текущей документации такой:
{set $condition = 1}
{switch $condition}
{case 0, 1, 2}
сработае...
Конструкция switch case без break в Fenom 6
Вчера в 13:55
ну тогда groupby и having
+ подгрузка не родных пакетов
есть?
еще я правильно понимаю что фильтрация и сортировка по умолчанию по всем полям?
...
Кейс gtsAPI. CRUD пользователей на фронте 1
Вчера в 13:39
Моя кофейная гуща говорит о том, что это код html и там есть смайлики, а кодировка бд не utf8mb4.
Modx Revo режет код HTML 2
23 ноября 2024, 11:51
Отличное дополнение, спасибо!
Подскажите, как организовать файл если стоит msOptionsPrice2 привязан к опции size там может быть много позиций с разн...
[YandexMarket2] интеграция с msOptionsPrice2 1
23 ноября 2024, 00:42
Еще снова вернулась проблемка, после выбора способа доставки почтой РФ — появляется стоимость доставки, но она «прилипает» и не исчезает после переклю...
Расчет стоимости доставки msRussianPost 11
22 ноября 2024, 21:57
Лучше деинсталировать и установить новую версию. Там полностью переписан JS.
ms_CDEK2 пропал? 5
22 ноября 2024, 20:33
Фильтрация как правило предполагает точное совпадения значений, а тебе нужен поиск.
mFilter2 фильтрация tv 1
22 ноября 2024, 19:55
Все исправилось, после замены на 'parents' => $_modx->resource.id
Помогите найти ошибку в шаблоне, теги 13
22 ноября 2024, 09:31
А кто подскажет, как в форму Создания/Редактирования ресурса, через ms2Form, добавить возможность выбирать несоклько параметров в одном TV?
Ну то-ест...
Создание ресурсов из фронтенда сайта, зарегистрированными пользователями. 4
Скрипт сработал
Но локализации spb в ресурсах не добавились:https://prnt.sc/uKX81XjRPLcN
Вот скрипт:
Пробую написать сниппет такого плана.
<?php
$options = $modx->getIterator('msOption');
$output = array();
$onlyoptions = marka, model;
foreach($options as $onlyoptions ){
$output[] = $onlyoptions ->get('key').'=='.$option->get('value');
}
return $output;
Не работает…
<?php
$options = $modx->getIterator('msOption');
$output = '';
foreach ($options as $opt){
$values[] = $opt->get('caption').'=='.$opt->get('key');
}
$output = implode('||',$values);
return $output;
А в шаблоне феном разбираем этот массив так? prnt.sc/n_EJth9nw9pr
Тогда на странице пустое поле: prnt.sc/iUZ68adwGFtX
1. Создал сниппет с этим кодом prnt.sc/ZuVvCHGba7Ny
2. Вывел сниппет в шаблоне prnt.sc/szcJrmnmSQ2O
3. Вот что получилось: ARRAY prnt.sc/vVOULK-zDUZh
Пробую так: prnt.sc/lfgYjY8GrPRL
Ругается на синтаксическую ошибку…
Пробую так: prnt.sc/lfgYjY8GrPRL
Ругается на синтаксическую ошибку…
Что бы KIA была первой в списке?
$key = 'mse2_filter_msoption_'.$opt->get('key'); // Добавляем к каждой опции префикс
$q = $modx->newQuery('modLexiconEntry');
$q->where(array(
'namespace' => 'msearch2',
'topic' => 'default',
'name' => $key
));
$lexicon = $modx->getObject('modLexiconEntry', $q);
// Пытаемся получить запись из словаря для этой опции
if (!$lexicon){
// Если записи нет — добавляем опцию в словарь
$newLexicon = $modx->newObject('modLexiconEntry', array(
'name' => $key,
'value' => $opt->get('caption'),
'namespace' => 'msearch2',
'topic' => 'default',
'language' => 'ru',
'createdon' => time()
));
Unexpected token '~' in expression in e014f8071b522126681529ed92e5b3d5 line 377
Ругается на этот символ ~, я так понял
В том и дело, что если группы фильтров через mfilter2 вызывать, то порядок как раз меняется порядком чанков.
А с использованием SelectFilters, порядок сбивается. Этот компонент н умеет походу порядок поддерживать тот который нужен. Он всовывает дефолтные группы фильтров в начало.
Название чанков поменял, тот же результат.
{set $filters = '!SelectFilters' | snippet: [
'default' => [
'ms|vendor:vendors', 'resource|parent:parents'
]
]}
{$_modx->runSnippet('!mFilter2', [
'element' => 'msProducts',
'class' => 'msProduct',
'showEmptyFilters' => 1,
'limit' => 12,
'tplOuter' => 'mFilter2OuterTpl',
'tpls' => 'listProductTpl,gridProductTpl',
'includeTVs' => 'available',
'includeThumbs' => 'medium',
'tplPageWrapper' => '@INLINE
{$prev}{$pages}{$next}
','tplPageActive' => '@INLINE {$pageNo}',
'tplPage' => '@INLINE {$pageNo}',
'tplPagePrev' => '@INLINE «',
'tplPageNext' => '@INLINE »',
'tplPagePrevEmpty' => '@INLINE «',
'tplPageNextEmpty' => '@INLINE »',
'filters' => $filters,
'aliases' => 'ms|vendor==vendor,
msoption|marka==marka,
msoption|model==model',
'ajaxMode' => 'button',
'filterOptions' => '{
«more_tpl»: "<button class=\«btn btn-blue btn-rounded btn_more\»>Загрузить еще"
}',
'tplFilter.outer.default' => 'filterSelectOuter',
'tplFilter.row.default' => 'filterSelectRow',
'tplFilter.outer.vendor' => 'filterCheckboxOuter',
'tplFilter.row.vendor' => 'filterCheckboxRow',
'tplFilter.outer.marka' => 'filterSelectOuter',
'tplFilter.row.marka' => 'filterSelectRow',
'tplFilter.outer.model' => 'filterSelectOuter',
'tplFilter.row.model' => 'filterSelectRow',
'tplFilter.outer.resource|parent:parents' => 'filterSelectOuter',
'tplFilter.row.resource|parent:parents' => 'filterSelectRow',
])}
Блок фильтров по каталогам в самой середине: prnt.sc/gPEm6FcerM3r
Это в случае, когда модели и марки — категории.
'ms|vendor:vendors', 'resource|parent:parents'
Эта группа фильтров должна идти последней: resource|parent:parents
А она выводится второй после ms|vendor:vendors
Характеристики: производитель
Опции: статус производителя «Оригинал/Неоригинал», марка «KIA/Hyundai» и модель «Solaris 1 RBR (10-17), Rio 2 JB (05-11), Cerato 2 TD (09-13), Sportage 2 KM, KMS (04-10), Carens 3 UN (06-13), Elantra 4 HD (06-11), Tucson 1 JM (04-10), i-40 VF (11-20), Verna 3 MCT (06)»
Заранее спасибо, буду очень благодарен.
Нажимает кнопку «найти» и попадает на страницу результатов поиска с подборкой салонных фильтров по его запросу. Так же на странице с подборкой вывожу mfilter2, и клиент уже может из подборки выбрать фильтром производителя фильтра, к примеру «Бош», а так же его статус «Оригинал/Неоригинал», отметив нужные галочки. Скриншот: prnt.sc/IcN6k3hPMhoP