• MODx Gallery: как получить количество изображений в папке?#

  • inixon Reply #1, 3 months, 3 weeks ago

    Reply
    Добрый день.

    Использую модуль Galery и Modx 2.20 для вывода изображений на сайте. Мне необходимо подсчитать количество изображений в каждой папке (альбоме) и затем вывести равное им количество div-ов.

    Для наглядности:

    • Album1
    • - Foto1
    • - Foto2
    • - Foto3
    • - Foto4
    • Album2
    • - Foto1
    • - Foto2
    • - Foto3
    • - Foto4
    • - Foto5
    • - Foto6
    • - Foto7
    [/list]

    Где:

    albumN = div#N
    fotoA = div.A
    Т.е. должно получиться:

    <div id="N1">
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
    </div>
    
    <div id="N2">
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
      <div class="A"></div>
    </div>
    
    


    С первым этапом (вывести div#N равное количеству альбомов) я справился просто: вывел количество страниц (через getResource), т.к. количество страниц = количество альбомов.

    А вот как вывести в них количество div.A равное количеству фотографий в альбоме - идей нет...


  • Artdevue Reply #2, 3 months, 3 weeks ago

    Reply
    Если
    [[Gallery]]
    -если вы не указали плейсхолдер вывода, то плейсхолдер
    [[+gallery.total]]


    В вашем случае проще сделать так
    [[!GalleryAlbums? &rowTpl=`myGallery`]]

    чанк myGallery
    <div id="N[[+id]]">[[!Gallery? &album=`[[+id]]`]] &thumbTpl=`my_thumb_tpl`</div>
    -
    ну и my_thumb_tpl
    <div class="A"></div>
    вы можете его наполнять фотографиями
    Выведет вашу конструкцию без использования getResource


  • inixon Reply #3, 3 months, 3 weeks ago

    Reply
    Спасибо огромное! Ваше решение работает, но:

    1. я так понимаю, что у вас опечатка и код должен выглядеть так? )

    <div id="N[[+id]]">[[!Gallery? &album=`[[+id]]` &thumbTpl=`my_thumb_tpl`]]</div>


    2. данный способ выводит больше альбомов чем надо. Прямое указание родительского альбома не помогает...


  • Artdevue Reply #4, 3 months, 3 weeks ago

    Reply
    1) ага - опечатка....
    2) поставьте в вызове
    &limit=`5`
    выведет первых 5 альбомов, так-же можно отсортировать, или указать какие http://rtfm.modx.com/display/ADDON/Gallery.GalleryAlbums