We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 34400
    • 1 Posts
    Доброго времени суток.
    Попробую описать наиболее детально задачу:
    Есть страница. На ней выводится лента картинок(маленькая картинка),
    при нажатии на картинку появляется всплывающий бокс в нем фоном стоит большая картинка и в этом же боксе есть каруселька с маленькими картинками, при клике на которые фон бокса заменяется большой картинкой.

    Страниц таких пять: 1. Главная, на ней отображаются картинки из всех подразделов. 2-4 - Собственно картинки из разделов.

    Иерархия в ресурсов:
    -Галерея
    --Первый раздел
    ---1 Элемент раздела (5 tv параметров)
    ----Фотография 1 (tv.photo)
    ----Фотография 2 (tv.photo)
    ---2 Элемент раздела (5 tv параметров)
    ----Фотография 1 (tv.photo)
    ----Фотография 2 (tv.photo)
    --Второй раздел

    Выводится примерно так:

    Чанк "карусель"
    [[If? &subject=`[[*id]]` &operator=`==` &operand=`4` &then=`
        [[!getResources? &parents=`4` &includeTVs=`1` &processTVs=`1` &tpl=`gr.tplOut` &depth=`2` &tvFilters=`personal.height==%%` &limit=`50`]]
    ` &else=`
        [[!getResources? &parents=`[[*id]]` &includeTVs=`1` &processTVs=`1` &tpl=`gr.tplOut` &depth=`0` &limit=`50`]]
    `]]
    


    gr.tplOut
    <!-- Carusel Item -->
    <li id="mID[[+id]]">
      <a href="javascript:;">
        <img src="[[phpthumbof? &input=`[[+tv.personal.photo.thumb]]` &options=`&f=jpeg&q=90&wl=83&hp=130&zc=1`]]" alt="[[+pagetitle]]" title="[[+pagetitle]]" width="83" height="130" />
      </a>
      <div class="data" style="display:none;">
        <div class="mName">[[+pagetitle]]</div>
        <div class="mDesc">
          <p>Рост: [[+tv.personal.height]]</p>
          <p>Цвет волос: [[+tv.personal.color.hair]]</p>
          <p>Цвет глаз: [[+tv.personal.color.eye]]</p>
          <p>Размер ноги: [[+tv.personal.size.leg]]</p>
          <p>Параметры: [[+tv.personal.param]]</p>
        </div>
        <ul class="mPhotos">
          [[!getResources? &parents=`[[+id]]` &includeTVs=`1` &processTVs=`1` &tpl=`gr.tpl.photos` &depth=`0` &limit=`15`]]
        </ul>
        <ul class="mThumbs">
          [[!getResources? &parents=`[[+id]]` &includeTVs=`1` &processTVs=`1` &tpl=`gr.tpl.thumbs` &depth=`0` &limit=`15`]]
        </ul>    
      </div>
    </li>
    


    gr.tpl.photos
    <li><img src="[[phpthumbof? &input=`[[+tv.personal.photo]]` &options=`&f=jpeg&q=85&wl=571&hp=615&zc=1`]]" alt="[[+pagetitle]]" /></li>


    gr.tpl.thumbs
    <li><img src="[[phpthumbof? &input=`[[+tv.personal.photo]]` &options=`&f=jpeg&q=85&wl=56&hp=86&zc=1`]]" alt="[[+pagetitle]]" /></li>


    Результат, если генерится 5 картинок, то все нормально, а вот если больше > сайт уходит в даун.
    Подскажите в чем ошибка.

    З.Ы. Почему из репозитория исчез Ditto или getResources он и есть?
    З.Ы.Ы. Кэширование намеренно отключено у getResources так сайт хоть как-то откликается секунд через 20, если убрать ответа сайт в дауне.
    З.Ы.Ы.Ы. Сервер достаточно мощный, Версия MODx 2.1.2

    Как вариант можно попробовать пытаться выводить это аяксом, но не знаю с чего начать.
      • 785
      • 2,113 Posts
      Неверное, phpthumbof генерирует эскизы «на лету», а для этого никаких мощностей не хватит. Или вручную делайте эскизы или используйте что-то, что их делает при сохранении страниц, а не при их показе.

      «Сервер достаточно мощный, Версия MODx 2.1.2» – для этой жутко прожорливой системы никаких мощностей не хватит, надо постоянно думать о повышении эффективности используемых решений, чтобы просто сайт нормально работал.
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации