[ms2gallery] Источник файлов для разных шаблонов
Небольшой плагин, позволяющий автоматически установить нужный источник файлов при создании ресурса с использованием дополнения ms2gallery.
У меня была такая ситуация: галерея нужна для 2-х разных сущностей: продукция и обычная страница.
Для каждого объекта нужны свои размеры превьюшек.
Решается просто: создаем 2 разных источника файлов, и создаем плагин на OnDocFormSave.
Плагин используется вместе с changeTemplate, что бы при создании ресурсов и шаблоны нужные прописывались.
У меня была такая ситуация: галерея нужна для 2-х разных сущностей: продукция и обычная страница.
Для каждого объекта нужны свои размеры превьюшек.
Решается просто: создаем 2 разных источника файлов, и создаем плагин на OnDocFormSave.
Плагин используется вместе с changeTemplate, что бы при создании ресурсов и шаблоны нужные прописывались.
<?php
if ($modx->event->name == 'OnDocFormSave' && $mode == modSystemEvent::MODE_NEW) {
if($resource->get('template') == 3){ // наш шаблон
$properties = $modx->fromJSON($resource->get('properties'));
$properties['ms2gallery'] = array('media_source' => 3); // его источник файлов
$resource->set('properties', $modx->toJSON($properties));
$resource->save();
}
} Комментарии: 15
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Загвоздка где то тут:
Может из за того что ModX revo 2.6.0 и PHP 7
Но на php7
Выведи в лог значения $mode, modSystemEvent::MODE_NEW и посмотри, чему они равны.
Логай дальше и ищи ошибку, не знаю чем еще помочь)
Пример для нескольких источников и разных шаблонов. Системные события проставить соответственно: OnDocFormSave и OnDocFormRender