Получить изображения ресурса (ms2Gallery)
Доброго времени подскажите как получить все изображения ресурса.
В данный момент снип получается
Заранее спасибо за ответ.
В данный момент снип получается
<?php
$modx->addPackage('ms2gallery', MODX_CORE_PATH . 'components/ms2gallery/model/');
if ($file = $modx->getObject('msResourceFile', array( 'resource_id' => 531))) {
echo '<pre>'; print_r($file->toArray()); echo '</pre>';
}
Таким образом получается выдрать только первую фотографию.Заранее спасибо за ответ.
Комментарии: 3
Вместо getObject используйте getCollection
Получилось)
Спасибо огромное, оставляю код тут, мало ли кому пригодится)
Спасибо огромное, оставляю код тут, мало ли кому пригодится)
<?php
$modx->addPackage('ms2gallery', MODX_CORE_PATH . 'components/ms2gallery/model/');
$id = $modx->resource->get('id');
$criteria = $modx->newQuery('modResource');
$criteria->sortby('menuindex','ASC');
$criteria->where(array(
'parent' => $id
));
$resources = $modx->getCollection('modResource',$criteria);
foreach ($resources as $k => $res) {
$criteria_2 = $modx->newQuery('msResourceFile');
$criteria_2->where(array(
'resource_id' => $k,
'path' => "".$k."/"
));
$criteria_2->sortby('rank','ASC');
if ($file = $modx->getCollection('msResourceFile', $criteria_2)) {
$count_item = count($file);
foreach ($file as $k => $res) {
$href = $res->toArray()["url"];
$big_img = $res->toArray()["url"];
$name = $res->toArray()["name"];
$name = str_replace(array(".jpeg", ".jpg"), "", $name);
$prev_img = "/assets/images/resources/".$res->toArray()["path"]."631x946/".str_replace("jpeg", "jpg", $res->toArray()["file"])."";
?>
<li data-thumb="<?=$prev_img?>" data-src="<?=$href?>" data-sub-html="<h4><?=$name?></h4>" title="<?=$name?>" alt="<?=$name?>">
<img src="<?=$prev_img?>" />
<h2><?=$name?>, <span><?=$count_item?> фото</span></h2>
</li>
<?}
}
}
Не надо так
$res->toArray()["name"];
надо вот так$res->get("name");
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.