Всего 125 986 комментариев

Артур Шевченко
21 января 2022, 22:50
0
Я выше написал как. Потом так
foreach($options as $option){
    if($option['key'] == 'tags'){
        print_r($option['value']);
    }
}
Рушан
21 января 2022, 22:26
0
Это опция. Вызываю в чанке.
Как правильно вызвать?
Я не силён в этом.
Заранее благодарю!
Артур Шевченко
21 января 2022, 21:59
0
А где ты это вызываешь? И tags это стандартное поле товара или опция? Если опция, то ищи тут
$options = $resource->getMany('Options');
Артур Шевченко
21 января 2022, 21:39
0
if($id){return  array();}
$resource = $modx->getObject('modResource', $id);
$sizes = json_decode($resource->getTVValue('sizes'),1);
$result  = array();
foreach($sizes as $size){
 if ($size['MIGX_id'] == $pack){
       $result['pack_count'] = $size['count'];
       $result['pack_type'] = $size['pack_type'];
  }
}
return $result;
Вызывать как обычный сниппет с параметрами $id и $pack.Возвращает массив. Ну и код не проверял, но вроде должен работать.
Артур Шевченко
21 января 2022, 20:48
0
А у меня работает))) Думаю дело в этом $modx->resource->get(«id»)
Дмитрий
21 января 2022, 18:34
0
Не знаю, может кому пригодится. Вот так в итоге вывел. Теперь только активная ветка категории третьего уровня показывается без скрытия через css остальных.
[[pdoMenu?
            &parents=`5`
            &levelClass=`submenu`
            &tpl=`@INLINE`
            &where=`{"isfolder":1}`
            &tplParentRow=`@INLINE[[+wrapper]]`
            &tplParentRowActive=`@INLINE[[+wrapper]]`
            &tplInnerHere=`@INLINE[[+wrapper]]`
            &tplOuter=`@INLINE[[+wrapper]]`
            &tplInnerRow=`@INLINE <li class="submenu_item [[+classnames]]"><a href="[[+link]]" [[+attributes]]>[[+menutitle]]</a></li>`
            &hideSubMenus=`1`
        ]]
Руслан Алеев
21 января 2022, 18:24
0
А мне наоборот в Evo это бесит, видимо, дело привычки =)
Александр Мельник
21 января 2022, 18:00
+2
— вешаете прослушку события click на кнопку открывающую модальное окно.
— при наступлении события делаете ajax запрос (например через js fetch) на свой php файл
— в php файле инициализируете modx
— получаете содержимое ресурса (или через вызов pdoResources или через $modx->getResource)
— делаете echo содержимого
— получаете его в js скрипте,
— innerHTML = 'полученный результат'
— открываете модальное окно
Дмитрий
21 января 2022, 17:46
0
Корявенький способ со скрыванием в display:none, но всё же вариант рабочий. Я так пробовал делать, но не заметил, что активной ветке прибавляется класс .active. Спасибо за помощь) Буду пока так делать. Жаль, конечно, что нельзя указать конкретный уровень для вывода.
И я вот так и не понял что делает &hideSubMenus. По идее он как раз должен скрывать неактивные ветки, но что-то не делает этого.
Олег
21 января 2022, 17:34
0
Вы бы стали его использовать?
Артур Шевченко
21 января 2022, 17:28
0
msMiniCartDynamic не поддерживается, но решение неплохое.
Дмитрий
21 января 2022, 17:09
0
Добрый день. Не совсем понял про что речь.
Arahort
21 января 2022, 16:58
0
Больше всего в UI\UX MODX меня напрягает что нету «вкладок» в админке, что бы для каждого чанка, TV итд не открывать новую вкладку и переключаться между ними, а работать в одной вкладке браузера, переключаясь между нужными ресурсами прямо в админке, на сколько я помню такое реализовано в Modx Evo
Наумов Алексей
21 января 2022, 15:46
1
+3
Например:
— ставим fancybox свежий (2.1.3 у меня)
— делаем обычную ссылку на страницу, но добавляем ей класс js-popup-content
<a href="/policy" class="js-popup-content">Политика</a>
— добавляем такой js код на сайт (используем jQuery )
$('.js-popup-content').fancybox({
        closeClick: false,
        type: 'ajax',
        helpers: {
            title   : null,
            overlay : {
                locked : false
            }
        },
        afterLoad   : function() {
            this.content = $("<div>").html(this.content).find(".page-content")[0].outerHTML;
        },
        autoSize: false
    });
из примечательного — в обработчике afterLoad мы вырезаем из загруженной страницы только текст, используя селектор .page-content в моем случае. У вас это может быть другой какой-нибудь, суть в том, чтобы этот селектор содержал в себе только текст с целевой страницы, без header и footer.
Наумов Алексей
21 января 2022, 14:44
0
Да, верно… ну можно чуть поправить попробовать, чтобы и так и так работало)
Greza
21 января 2022, 14:28
0
Один момент мне показался не очевидным, а в чанке пример не нашел
Когда добавляешь поле для файлов
<input type="file" name="files[]"/>
не зависимо от filesCount = 1, поле должно передаваться массивом: files[],
иначе плагин не верно парсит расширения файлов и в итоге они не добавляются.
Алексей Смирнов
21 января 2022, 09:43
0
Может, с твоей стороны и не будет, но она в свое время подстегнула меня к размышлениям, а размышления к действию.
И в результате этом году будет релиз компонента темизатора, который как раз позволит иметь темы, переключать их, настраивать и тд…
А с моей стороны хотел сделать логичное продолжение той статьи, но в другом уже ключе, тк принцип у моего допа другой, о чем я позже буду писать.
Так что продолжение в виде мыслей, предложений вариантов — на самом деле есть. )
И мое дело лишь скромно попросить вернуть статью миру MODX. ) Спасибо.
Игорь
21 января 2022, 08:41
0
Не хотелось бы менять пути в css.
Я нашёл другой способ.
Просто все файлы поместил в папку css и заработало.