Получить значения поля ms2Gallery
        Благородные сэры, подскажите, как получить по аналогии значение поля «Дополнительно» у изображения в ms2Gallery?
    
    
                                                                                
            $tv = !empty($input) ? trim($input) : trim($modx->resource->get($tv));
if (empty($tv)) {return '';}Заранее благодарен.    Комментарии: 12
$modx->addPackage('ms2gallery', MODX_CORE_PATH . 'components/ms2gallery/model/');
// Получаем файл с id = 10
if ($file = $modx->getObject('msResourceFile', 10)) {
	print_r($file->toArray());
}            
                Василий, спасибо за ответ. 
Я сниппет один использовал, чтобы разбивать ТВ-поля по строкам, с возможностью оформления чанком каждой строки.
                    Я сниппет один использовал, чтобы разбивать ТВ-поля по строкам, с возможностью оформления чанком каждой строки.
<?php
// Получаем или готовый текст, или достаем указанный ТВ у ресурса
$tv = !empty($input) ? trim($input) : trim($modx->resource->getTVValue($tv));
if (empty($tv)) {return '';}
// Стандартные чанки, можно переопределить
if (empty($tpl)) {$tpl = '@INLINE <li>[[+value]]</li>';}
if (empty($tplOuter)) {$tplOuter = '@INLINE <ul>[[+rows]]</ul>';}
// Подключаем pdoTools для работы с инлайновыми чанками
$pdo = $modx->getService('pdoTools');
// Разбиваем текст по символу переноса строки
$rows = '';
$tmp = array_map('trim', explode("\n", $tv));
foreach ($tmp as $value) {
	if (empty($value)) {continue;}
	$rows .= $pdo->getChunk($tpl, array('value' => $value));
}
// Если есть, что выводить - выводим
if (!empty($rows)) {
	return $pdo->getChunk($tplOuter, array('rows' => $rows));
}Можно его как-то переделать под вышеописанную задачу — разбивать по строкам поле «Дополнительно» изображения ms2Gallery? Спасибу отправлю.            
                Видимо, речь об этом сниппете. 
Тогда нужно его совсем чуть-чуть переделать:
И можно вызывать в чанке оформления галереи:
Здесь сам сниппет ничего получать не должен, потому что, в отличии от ТВ, у картинок нет имён и они не так привязаны к ресурсам. Поэтому, работаем только с уже переданным текстом.
                    Тогда нужно его совсем чуть-чуть переделать:
<?php
// Получаем готовый текст
$text = trim($input);
if (empty($text)) {
	return;
}
// Стандартные чанки, можно переопределить
if (empty($tpl)) {$tpl = '@INLINE <li>[[+value]]</li>';}
if (empty($tplOuter)) {$tplOuter = '@INLINE <ul>[[+rows]]</ul>';}
// Подключаем pdoTools для работы с инлайновыми чанками
$pdo = $modx->getService('pdoTools');
// Разбиваем текст по символу переноса строки
$rows = '';
$tmp = array_map('trim', explode("\n", $text));
foreach ($tmp as $value) {
	if (empty($value)) {continue;}
	$rows .= $pdo->getChunk($tpl, array('value' => $value));
}
// Если есть, что выводить - выводим
if (!empty($rows)) {
	return $pdo->getChunk($tplOuter, array('rows' => $rows));
}И можно вызывать в чанке оформления галереи:
[[+add:getAddList]]Здесь сам сниппет ничего получать не должен, потому что, в отличии от ТВ, у картинок нет имён и они не так привязаны к ресурсам. Поэтому, работаем только с уже переданным текстом.
                Премного благодарен, Василий! Спасибо отправил.            
                    
                На здоровье!            
                    
                Василий, подскажи, а как вызывать как сниппет? 
Через какой параметр передавать плейсхолдер?
Заранее благодарен.
                    [[getAddList? &tpl=`` ]] Через какой параметр передавать плейсхолдер?
Заранее благодарен.
                Пробовал по-разному. Не хочет )            
                    
                Разобрался. 
                    [[getAddList? &input=`chunk]]            
                Да, у всех сниппетов, которые могут работать как фильтр вывода, есть параметр &input.
Вот документация.
                    Вот документация.
                Спасибо, Василий. Скажите, а можно как-то задать номер строки для вывода? Сниппет разбивает на строки и выводит только ту строку, которая указана в параметре. Есть однотипные списки, из которых нужно вытаскивать определенные строки. Сильно нужно будет изменить сниппет?            
                    
                Надо уже как-то определяться, «на ты» или «на вы» мы общаемся. А то в сообществе одно, в поддержке другое, а на почте как получится.
Поэтому, держи новую версию сниппета — code.re/7IG
Заодно добавил еще возможность указания разделителя строк. Если пустой — то будет разбиваться как обычно, по переносам.
                    Поэтому, держи новую версию сниппета — code.re/7IG
[[!Test?
	&rows=`0,3,4`
	&input=`1||2||3||4||5||6`
	&separator=`||`
]]Номера строк нужно указывать от нуля — именно так они идут в массиве.Заодно добавил еще возможность указания разделителя строк. Если пустой — то будет разбиваться как обычно, по переносам.
                Ну просто сказка! Спасибо, Василий! Отправил благодарность.            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.