Производительность msfavorites в mfilter2

Добрый день, суть mfilter2 с пустым
['tpls'] = '@INLINE {$longtitle}'; листинг товаров 35 из 3000 отрабатывает за 0,5сек
одно из узких мест msfavorites, казалось бы добавляю
<a class=«msfavorites»
data-click
data-data-list=«default»
data-data-type=«resource»
data-data-key="[[+id]]"
data-msfavorites-animation=«like.png»
>


,

и тут же получаю 1,3. кто нибудь сталкивался?
Евгений
18 августа 2022, 18:41
modx.pro
496
0

Комментарии: 6

Евгений
18 августа 2022, 19:12
0
а на некоторых категориях до 4х мин. пока выпилил с листинга, но тормозов добавляет конечно (((
    Роман
    18 августа 2022, 21:03
    0
    Попробуйте добавить tpls в чанк, так как INLINE не кэшируется. Плюс можно добавить SELECT и указать только нужные поля.
      Евгений
      18 августа 2022, 22:07
      0
      tpls как чанк подключен, кэширование фенома отключено по своим причинам. меня больше волнует что там происходит под капотом, буду изучать
        Роман
        18 августа 2022, 22:22
        0
        Добавьте в сниппет «showLog» => 1, дебаг покажет, где трудности на вашей странице. Большое кол-во товаров mfilter2 будет медленно обрабатывается. Нужно или кэширование настраивать или переписывать под свои нужды.
          Евгений
          19 августа 2022, 00:00
          0
          Решил проще, добавил
          вывод тэга
          <div class="myhard" id="hard-{$id}"></div>
          а в него уже на клиенте ждаваскриптом. что то типа на скорую руку.
          javascript

          $('.myhard').each(function(i,obj) {
                      console.log(this.id);
                      var s = '<div class="hart">\n' +
                          '                        <a class="msfavorites"\n' +
                          '                           data-click\n' +
                          '                           data-data-list="default"\n' +
                          '                           data-data-type="resource"\n' +
                          '                           data-data-key="'+this.id.replace("hard-","")+'"\n' +
                          '                           data-msfavorites-animation="like.png"\n' +
                          '                        >\n' +
                          '                            <i class="msfavorites-icon-heart"></i>\n' +
                          '                        </a>\n' +
                          '                    </div>';
                  $(this).append(s);
          и все заработало без тормозов
      Евгений
      19 августа 2022, 06:25
      0
      вобщем разобрался, всеми виной эта строка
      data-data-key="[[+id]]"
      заменил на
      data-data-key="{$id}"
      и все заработало
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        6