Обновление превью товаров и swiper [РЕШЕНО]

Добрый день!
Помогите пожалуйста с двумя вопросами.

1. Пробую обновить по этому скрипту Обновление превью выдает ошибку
Fatal error: Uncaught Error: Call to a member function getService() on null in C:\OSPanel21\domains\zapchasti33.ru\regen.php:4 Stack trace: #0 {main} thrown in C:\OSPanel21\domains\zapchasti33.ru\regen.php on line 4
Ругается на эту строку:
$miniShop2 = $modx->getService('minishop2');
В чем может быть дело?

2. Как к swiper прикрутить phpThumbOn. Как не пытался, не получается.
Вот код из чанка:
<div id="msGallery">
    {if $files?}
        {set $slides = ''}
        {foreach $files as $file}
            {set $slides = $slides ~ '<div class="swiper-slide"><img src="assets/images/products/{$_modx->resource.id}/'~$file['file']~'" alt="'~$file['name']~'" title="'~$file['name']~'"></div>'}
        {/foreach}
        <div class="swiper mySwiper2">
            <div class="swiper-wrapper">
                {$slides}
            </div>
            <div class="swiper-button-next"></div>
            <div class="swiper-button-prev"></div>
        </div>
        <div class="swiper mySwiper">
            <div class="swiper-wrapper">
               {$slides}
            </div>
        </div>
    {else}
        <img src="{('assets_url' | option) ~ 'components/minishop2/img/web/ms2_medium.png'}"
             srcset="{('assets_url' | option) ~ 'components/minishop2/img/web/ms2_medium@2x.png'} 2x"
             alt="" title=""/>
    {/if}
</div>
Может кто делал уже. Спасибо!
Алексей
08 февраля 2023, 09:52
modx.pro
591
0

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

Артур Шевченко
08 февраля 2023, 13:45
0
Ругается на эту строку:
Минишоп точно установлен?

Как к swiper прикрутить phpThumbOn.
Во-первых, зачем? Если превью можно настроить в источнике файлов и заранее сгенерировать, и не делать этого в чанке.
Во-вторых не вижу вообще попытки использовать компонент phpThumbOn.
В-третьих, у вас пути к картинкам неверные.Напишите в чанке {$files | print} и посмотрите, что вообще есть внутри этого массива, вам будет проще понять как это выводить.
    Алексей
    08 февраля 2023, 14:45
    0
    Минишоп точно установлен. В том и дело что я не могу обновить превью. Сейчас посмотрю через {$files | print}. Спасибо!
      Артур Шевченко
      08 февраля 2023, 14:58
      0
      Стоп, тупанул, у вас там где вы запускаете скрипт обновления превью переменная $modx не определена. Если это файл, надо modx подключить.
        Алексей
        08 февраля 2023, 15:11
        0
        Да, это файл. Прошу прощения, не понял, как подключить?
          Артур Шевченко
          08 февраля 2023, 15:20
          0
          <?php
          define('MODX_API_MODE', true);
          require_once dirname(__FILE__, 2) . '/index.php';
          Путь к index.php указывайте относительно расположения вашего файла, т.е. если он лежит в корне, то цифру 2 можно убрать.
            Алексей
            08 февраля 2023, 15:35
            0
            Артур, все получилось! Огромное спасибо за помощь!
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    6