Всего 123 786 комментариев

Сергей Карпович
30 января 2024, 16:43
0
Проблема не в минишоп, а в фильтрах.
у меня например тоже 20к товаров, все шустро работает, пока к mfliter2 мне не пришлось прицепить остатки. и теперь каталог грузится по 30 секунд.

никто из разработчиков плагинов mfilter и remains так и не разобрались.

Понятно стало только то что при подключении remains к выводу, идет огромное количество запросов
Артур Шевченко
30 января 2024, 16:31
+1
Я бы так сделал
document.addEventListener('si:send:success', (e) => {   
    bootstrap.Modal.getOrCreateInstance(e.detail.target).hide();
})
Александр
30 января 2024, 14:57
+2
Более чем. Единственное, не обязательно
if(result.success)
использовать т.к. ты уже вызываешь событие
si:send:success
Вот так тоже будет работать
document.addEventListener('si:send:success', (e) => {
    bootstrap.Modal.getOrCreateInstance(document.getElementById('id-формы')).hide();
})
Диман
30 января 2024, 12:52
0
document.addEventListener('si:send:success', (e) => {
  const {target, result} = e.detail;
  // установим свой обработчик успешной отправки
  if(result.success){ 
   bootstrap.Modal.getOrCreateInstance(document.getElementById('id-формы')).hide();
  }
})
Вот так работает, только не знаю, на сколько это правильно
vrm13
29 января 2024, 12:32
0
Та же ошибка, попереустанавливал с чистками кэшей, не установилась. кодировки такие же
utf8mb4_general_ci, utf8_general_ci
Володя
29 января 2024, 12:28
+1
А для фронта задать параметры для Cropper нельзя?
можно только указать настройки кроппера по дефолту в виде json
&cropper=`{ "aspectRatio":3,"minCropBoxWidth":395,"minCropBoxHeight":198 }`
Евгений
29 января 2024, 12:22
0
Спасибо, теперь понял, думал это для фронта тоже работает. А для фронта задать параметры для Cropper нельзя?
Володя
29 января 2024, 11:31
+1
Это настройка только для админки, выводит комбобокс с настройками кропа

на фронте этого функционала нет.
Евгений
29 января 2024, 11:17
0
не очень понятно как использовать настройку userfiles_image_cropper_profile. По умолчанию в ней значится
[{"profile":"free"},{"profile":"square","ratio": "1/1"},{"profile":"4x6 wide","ratio": "6/4"}]
А как и где нужный профиль указывать? Пробовал в json &drozone и в &modal указать как
"profile":"square"
— никаких изменений не заметил
Диман
29 января 2024, 03:38
0
Подскажите пжл, как закрыть модальное окно на boostrap 5 после успешной отправки формы?
Алексей Смирнов
28 января 2024, 19:51
0
Ну как он будет находиться — есть 2 варианта. Или сами все статьи в спец. разделе без категорий и выставление в ТВ всех категорий.
Или сразу физически создавать в категории нужной и в ТВ выставлять доп. категории.
Ну или как вы и хотели — где то создавать ресурс и при заполнении выбирать категории в ТВ, а первую выставленную пометить как главную и присваивать через плагин при сохранении. тоже можно.
как вам удобнее.
Сергей Карпович
28 января 2024, 18:50
0
Это понятно, но ресурс всегда физически должен находиться в какой то категории, вот про ее выбор через tv я и говорю.
Т.е. 1Tv — родительская категория, 2tv — виртуальные
Алексей Смирнов
28 января 2024, 16:58
0
Если у вас планируется мультикатегории, то конечно удобнее будет каждой статье присваивать необходимые категории через TV можно сделать.
У меня так в моей теме mtBlog сделано.
Так и фильтровать и выводить будет удобнее. и плагины на сохранение нет нужно писать.
Если у вас статья всегда будет принадлежать одной категории то можно их перераспределить физически в свои разделы, например.
Алексей Смирнов
28 января 2024, 16:54
0
Несколько скорее всего не получится, но например parent можно родительский один вписать.
по ТВ параметру, помоему не поддерживается.
Ну и как вариант завести или другой шаблон для необходимых ресурсов или ТВ (в зависимости от того что удобнее)
Игорь
28 января 2024, 13:40
0
Никто не подсказал.
вот ответ

[[!getImageList?
                &value=`[[+gallerys]]`
                &tpl=`tplIndicator`
                &docid=`[[*id]]`
                &docIdx=`[[+idx]]`
                &migxId=`[[+MIGX_id]]` 
                &tvname=`[[+MIGX_id]]`
            ]]

сниппет CountItems:
<?php
// Получаем входную строку, предположительно содержащую JSON
$inputString = $modx->getOption('input', $scriptProperties, '');
// Декодируем JSON-строку в массив
$data = json_decode($inputString, true);
// Возвращаем количество элементов в массиве, если массив не пуст
return $data ? count($data) : 0;


Выводим кол-во записей: [[CountItems? &input=`[[+gallerys]]`]]
Николай Савин
27 января 2024, 10:09
+1
Faceted-search раз месяц тут всплывает в различных постах. Судя по всему — именно его и будем в дальнейшем использовать для организации полноценного каталога в MS3. Альтернатив особо и нет для шаредов.
Иван Бочкарев
27 января 2024, 06:52
+2
> Вопрос по донату, у вас на станице modx.pro/about — реквизиты Ивана Бочкарева.

Я выступаю казначеем сообщества =). За сохранность можете не переживать.
Василий Наумкин
27 января 2024, 06:27
1
+2
mFilter2 медленный по причине медленного устройства традиционных баз данных и языка PHP в принципе.

Вот уж не соглашусь — из базы он только выбирает данные, затем строит файловый индекс, и его фильтрует на PHP, пробегая по массивам. И, полагаю, делает это совсем неоптимально.

Сегодня есть гораздо более быстрый компонент k-samuel/faceted-search, который я опробовал на разных проектах, в том числе и с большим количеством данных — результаты отличные. Вопрос только в том, сможет ли кто-то, и захочет ли, прикрутить этот пакет к MODX.

Вот тут пример интеграции вместе с кодом, а вот тут можно потыкать результат вживую.

А с базой MODX работать придётся даже ElasticSearch, потому что именно в ней хранятся данные товаров, которые нужно фильтровать.
Николай Савин
26 января 2024, 21:52
+1
Спасибо за теплые слова. Донат можно отправить на любой удобный вариант. Любой из них дойдет по назначению до кошелька сообщества. К слову это не только для меня деньги. Мы поддерживаем и других авторов, в их работе над проектами сообщества. Из последнего, недавно поддержали разработку нового сайта документации.