Работа из командной строки (CLI)

regenerate.php

Компонент Gallery3x включает в себя скрипты для выполнения задач обслуживания и массовой обработки данных напрямую из консоли (терминала) вашего сервера по SSH. Это гораздо быстрее и эффективнее для больших объемов данных, чем выполнение тех же действий через браузер.

Перегенерация всех превью

Со временем вам может понадобиться обновить все миниатюры в галерее. Например, если вы изменили настройки водяного знака, добавили новый размер превью или изменили параметры фильтров в системных настройках.

Для этой задачи предназначен скрипт regenerate.php.

Использование

  1. Подключитесь к вашему серверу по SSH.

  2. Перейдите в корневую директорию вашего сайта MODX (там, где находится папка core).

  3. Выполните следующую команду:

    Bash
    php core/components/gallery3x/cli/regenerate.php
    

Скрипт начнет свою работу и будет выводить в консоль информацию о прогрессе, обрабатывая каждый найденный файл в галерее.

MODX Initialized. Starting regeneration...
Found 58 files to process.

Processing file ID: 1 (Resource: 2, Filename: photo1.jpg)
Processing file ID: 2 (Resource: 2, Filename: photo2.webp)
...
Processing file ID: 58 (Resource: 15, Filename: another.png)

----------------------------------------
Done! Regenerated thumbnails for 58 of 58 files.
Site cache has been cleared.

После завершения работы скрипта все превью для всех изображений в компоненте Gallery3x будут пересозданы с учетом самых последних настроек. В конце скрипт автоматически очистит кеш сайта.

import_ms2gallery.php

Импорт из ms2Gallery

Компонент Gallery3x включает в себя консольный скрипт для миграции изображений из старого компонента ms2Gallery. Это позволяет легко и быстро перенести все существующие галереи на новый, современный движок Gallery3x при переезде с MODX 2 на MODX 3.

Ключевая особенность: Скрипт работает, даже если вы уже удалили пакет ms2Gallery из админ-панели. Главное, чтобы его таблица (modx_ms2_resource_files) и физические файлы остались на сервере.

Использование скрипта


Подготовка к импорту

Перед запуском убедитесь, что:

  1. Старая таблица ms2Gallery (обычно префикс_ms2_resource_files) все еще существует в вашей базе данных.

  2. Физические файлы, загруженные через ms2Gallery, все еще находятся на сервере.


Настройка и запуск скрипта

Вся настройка производится прямо в файле скрипта.

  1. Откройте файл скрипта в текстовом редакторе. Он находится по пути: /core/components/gallery3x/cli/import_ms2gallery.php

  2. Настройте параметры в самом верху файла:

    PHP

    // ===================================================================
    // --- НАСТРОЙКИ ИМПОРТА: Укажите ваши значения здесь ---
    // ===================================================================
    
    // ID ресурса для импорта. Укажите 0, чтобы импортировать для ВСЕХ ресурсов.
    $resourceId = 0;
    
    // "Сухой" запуск. 
    // true  - скрипт только покажет, какие файлы он нашел, но ничего не будет импортировать.
    // false - скрипт выполнит реальный импорт.
    $isDryRun = true;
    
  3. Запустите скрипт из консоли (терминала) по SSH. Сначала всегда запускайте в "сухом" режиме, чтобы убедиться, что скрипт правильно находит ваши файлы. Для этого $isDryRun должен быть true.

    • Перейдите в корневую директорию вашего сайта.

    • Выполните команду:

      Bash

      php core/components/gallery3x/cli/import_ms2gallery.php
      
    • Вы увидите в консоли отчет о том, сколько файлов найдено для импорта.

  4. Запустите реальный импорт.

    • Если "сухой" запуск прошел успешно, измените в файле скрипта $isDryRun = false;.

    • Сохраните файл и выполните ту же команду в консоли еще раз.

    Начнется процесс копирования файлов, создания записей в базе и генерации превью.


    MODX Initialized. Starting ms2Gallery import...
    Found 150 files to process.
    
    Processing file: /path/to/site/assets/images/products/12/photo1.jpg
     -> SUCCESS: Imported to Gallery3x file ID 210
    
    Processing file: /path/to/site/assets/images/products/12/photo2.jpg
     -> SUCCESS: Imported to Gallery3x file ID 211
    ...
    ----------------------------------------
    SUCCESS: Imported 150 of 150 found files.
    Site cache has been cleared.
    

После импорта

  1. Проверьте результат: Зайдите в админ-панели на страницы ресурсов и убедитесь, что изображения появились во вкладке "Галерея" компонента Gallery3x.

  2. Проверьте сайт: Убедитесь, что галереи на сайте отображаются правильно.

  3. Очистка (опционально): Когда вы будете полностью уверены, что миграция прошла успешно, вы можете вручную удалить старую таблицу modx_ms2_resource_files из базы данных, чтобы она не занимала место.