Андрей

Андрей

Был в сети 01 августа 2026, 02:46
Заказы принимаю
Сергей
Сергей
У всех что — то больно сложные решения для такой простой задачи.
в MODX же есть стандартное решение. Выбираете нужного пользователя и просто переопределяете настройку use_editor или which_editor и все
Aleksandr Huz
Aleksandr Huz
Можно через модификатор:
$fenom->addModifier('tvname', function ($tvname) {
    // Получаем объект TV по имени
    $tv = $modx->getObject('modTemplateVar',array('name' => $tvname));
    // id текущего ресурса
    $id = $modx->resource->id;
    // значение tv
    $value = $tv->renderOutput($id);
    
    // Ищем необходимое значение и возвращаем навазние
    $tvlist = explode('||', $tv->get('elements'));
    foreach ($tvlist as $item) {
        $arr = explode('==',$item);
        if($arr[1] == $value) {
            return $arr[0];
        }
    }
    return $tvname;
});

В чанке:
{'name TV' | tvname}
shtyrman
shtyrman
Сергей, тут все упирается в знание js и мониторинг информации за бугром. Если на modx информации порой вообще нет, то на какие то решения в js и подавно хрен что найдешь.
Если вас интересует как стартануть в full stack, то у меня был такой процесс:
— изучаем js. 3-е издание \ Этан Браун
— секреты JavaScript ниндзя. Второе издание
— js подробное руководство. 6-е издание
— веб-разработка с применение node и express \ Итан Браун
— React и Redux. Функциональная веб-разработка
Этого будет достаточно что бы понять как все устроенно и плавать дальше самому, используя документации.
Руслан Алеев
Руслан Алеев
Здравствуйте, Иван, давеча мы обсуждали дополнительный функционал и об ненужности внедрения излишнего функционала в MODX3, однако я имел в виду то, что есть популярные компоненты, которые не «усложняют», а скорее «исправляют» MODX, к примеру, есть дополнение «AutoTemplate» которое при создании нового ресурса ставит ему шаблон как у его соседних ресурсов (если таковых нет, то шаблон родителя) — крайне логичное поведение по-моему.
Я думаю, все же стоит оценить самые скачиваемые дополнения и, возможно, внедрить какие-либо полезные функции в MODX3.

Персональный список таких дополнений, которых, по-моему, не хватает:
— AutoTemplate — о нем выше;
— filetranslit — транслитерация загружаемых файлов, есть транслитерация псевдонимов, почему не быть и файлам;
— UpgradeMODX — обновление MODX;
— hideSource — скрытие медиа-источников файлов из дерева;
— minifyHTML — удаление лишних табов и пробелов при генерации шаблона в браузере;
— MinifyX (Возможно) — объединение и сжатие js и css.

Еще хотелка — возможность создавать конфиги настроек, например, для пакетной загрузки компонентов — один раз загрузил нужные компоненты, экспортировал конфиг на будущее и в будущем загружаешь конфиг и дополнения ставятся сразу толпой :) для системных настроек тоже такую возможность внедрить бы (опять же функционал такой в MODX уже есть, но работает в «Политиках доступа»).

Я понимаю про концепцию MODX как CMF и про излишний функционал, но, повторюсь, некоторые компоненты логичны и жаль, что их нет из коробки. К примеру, виджет обновления MODX в 3 версию внедряют (по скринам хотя бы :) ).

Надеюсь, вы прислушаетесь к комментариям, и MODX воспылает новыми красками! Спасибо за ваш труд!

p.s. Стоит помимо популярных и скачиваемых дополнений также оценить и рынок конкурентов из популярных CMS/CMF.
Виталий Серый
Виталий Серый
На текущий момент без изменения сниппета msProducts сгруппировать не получится.
Надо править либо сам сниппет, либо создать копию (если не прав, то править надо меня).

После 28 строки добавить что-то вроде такого
// Add grouping
$groupby = array(
    'msProduct.id',
); //строка 28
if(!empty($scriptProperties['groupby'])){
    $groupby = array(
        $scriptProperties['groupby'],
    );
}

Так же при желании все необходимое можно добавить в вызове сниппета вместо создания нового
{'!mFilter2' | snippet:[
    'class' => 'msProduct',
    'parents' => 0,
    'element' => 'msProducts',
    'innerJoin' => '{
                "Category": {
                    "class": "msCategory"
                 }
            }',
    'select' => '{
                "Category": "*"
            }',
    'groupby' => 'Category.id',
    'tpl' => '@INLINE <p><a href="{$uri}">{$pagetitle}</a></p>',
    ....
]}
Владимир
Владимир
1) HTTPS — не проблема, сейчас все сайты по-умолчанию на этом протоколе делаем.
2) Этот набор браузеров тоже устраивает.

В плане публичной части я, кстати, рассматривал пару примеров реализации вполне неплохих, которые я смогу сам доделать на jQuery:
webaudiodemos.appspot.com/AudioRecorder/index.html
subinsb.com/html5-record-mic-voice/

А вот что касается серверной стороны — я плохо знаю PHP, поэтому написать кастомный сниппет, который будет уже складывать эти отзывы в каком либо виде, мне будет трудновато.
Так что, может вы сможете помочь, когда дойдет дело до этого, небезвозмездно?
Сами отзывы скорее всего выполню в виде ресурсов. Ну либо какое-то «более лучшее» решение найдется. :)