We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 52846
    • 2 Posts
    Приветствую всех. Делал интернет-магазин на Modx Revo. После загрузки в каталог порядка 1600 позиций (через импорт) стал жутко тормозить каталог. Вывод дочерних элементов в категории открывается очень долго. Секунды 3-4.

    В частности заметил, что тупит такая конструкция:

    [[!get:toPlaceholder=`serie`? &need=`serie`]]
    [[!get:toPlaceholder=`brand`? &need=`brand`]]
    [[!If?
       &subject=`[[!get? &need=`serie`]]`
       &operator=`>`
       &operand=`0`
       &then=`[[!getPage?
        &elementClass=`modSnippet`
        &element=`getResources`
          &parents=`[[*id]]`
          &tpl=`list_goods_table`
          &limit=`20`
          &initialOffset=`1`
          &includeTVs=`1`
          &processTVs=`1`
          &includeContent=`0`
          &tvFilters=`serie==:[[+serie]]:`
          &pageFirstTpl=` `
    &pageLastTpl=` `
    &pageNextTpl=`<li class="control"><a[[+title]] href="[[+href]]">Следующая</a></li>`
    &pagePrevTpl=`<li class="control"><a[[+title]] href="[[+href]]">Предыдущая</a></li>`
        &pageNavVar=`page.nav`
    ]]`
       &else=`[[!If?
       &subject=`[[!get? &need=`brand`]]`
       &operator=`>`
       &operand=`0`
       &then=`[[!getPage?
        &elementClass=`modSnippet`
        &element=`getResources`
          &parents=`[[*id]]`
          &tpl=`list_goods_table`
          &limit=`20`
          &initialOffset=`1`
          &includeTVs=`1`
          &processTVs=`1`
          &includeContent=`0`
          &tvFilters=`brand==[[+brand]]`
          &pageFirstTpl=` `
    &pageLastTpl=` `
    &pageNextTpl=`<li class="control"><a[[+title]] href="[[+href]]">Следующая</a></li>`
    &pagePrevTpl=`<li class="control"><a[[+title]] href="[[+href]]">Предыдущая</a></li>`
        &pageNavVar=`page.nav`
    ]]`
       &else=`[[!getPage?
        &elementClass=`modSnippet`
        &element=`getResources`
          &parents=`[[*id]]`
          &tpl=`list_goods_table`
          &limit=`20`
          &initialOffset=`1`
          &includeTVs=`1`
          &processTVs=`1`
          &includeContent=`0`
          &pageFirstTpl=` `
    &pageLastTpl=` `
    &pageNextTpl=`<li class="control"><a[[+title]] href="[[+href]]">Следующая</a></li>`
    &pagePrevTpl=`<li class="control"><a[[+title]] href="[[+href]]">Предыдущая</a></li>`
        &pageNavVar=`page.nav`
    ]]`
    ]]`
    ]]


    Конструкция описывает что выводить, если выбрана "по сериям", "по брендам" или когда ничего не выбрано.

    Что можно с ней сделать чтобы как-то ускорить или закэшировать часть элементов? Или может есть конструкции или плагины, позволяющие более изящную реализацию всего этого?

    Читал статью, там для ИМ вообще советуют использовать Smarty и phpTemplates. Но их изучать долго. Хочется малой кровью обойтись.
      • 48486
      • 16 Posts
      в качестве предложения, говориться методом тыка: попробуйте убрать восклицательные знаки чтобы он начал кешировать. ))))