Поддержать Проект

Обратная связь

[MODX] Guru
  • Информация
  • Разработчикам
  • Дополнения
    • DocLister
    • DLMenu
    • DLCrumbs
    • DLBuildMenu
    • DLLastViews
    • DLSiblings
    • DLRequest
    • DLglossary
    • DLSitemap
    • DocInfo
    • FormLister
    • Wayfinder
    • phpthumb
    • LikeDislike
    • eForm
    • Ditto
    • multiTV
    • AjaxMegaSearch
    • AjaxSearch
    • WebLoginPE
    • Breadcrumbs
    • CodeMirror
    • AnythingRating
    • Easy Newsletter
    • FirstChildRedirect
    • OpenGraphTags
    • ddTypograph
    • TagSaver
    • BlackList
    • CfgTv
    • ModxAccount
    • Forgot Manager Login
    • GetField
    • if
    • Jot
    • ListChild
    • ListIndexer
    • ManagerManager
    • ddMMEditor
    • MaxiGallery
    • MemberCheck
    • ddGetMultipleField
    • MetaX
    • MODxBB и phpBB
    • Yams
    • Personalize
    • PHx
    • Reflect
    • tagLinks
    • TransAlias
    • TvTagCloud
    • UltimateParent
    • WebSignup
    • WebLogin
    • countViews
    • thumb
    • imageCaptor
    • optimizeJPG
    • Preview Next
    • Shopkeeper
    • SiteMap
    • Sass
    • Selector
    • SimpleGallery
      • Вывод изображений
      • Вывод списка галерей
      • Генерация превью при загрузке
      • Расширение функционала, часть 1
      • Расширение функционала, часть 2
      • Расширение функционала, часть 3
      • Переход с MaxiGallery
      • Переход с EvoGallery
      • Переход с PssGallery
      • Переход с MultiPhotos
      • Подключение редактора
    • SimpleTube
    • SimpleFiles
    • Star Rating
    • MinifyX
    • adminNav
    • SimplePolls
    • CResource
    • MODxAPI
    • customTables
    • HtmlInLine
    • HtmlMinModxEvo
    • SHKUserProfile
    • PickDocsInTree
    • evoSearch
    • editDocs
    • PageBuilder
    • HybridAuth
    • Compare
    • alterTitle
  • Виджеты
  • Уроки
  • Разработчики
  • Готовые примеры
  • Блог
  • Конфиги
  • HTML коды
© [MODX] Guru
  • SimpleGallery

Переход с EvoGallery на SimpleGallery

  • Дополнения
  • SimpleGallery
  • Переход с EvoGallery
24032

Переход с EvoGallery на SimpleGallery

Вот такой скрипт положить возле index.php и запустить (желательно в консоли, так как может занять много времени в случае больших галерей), сделав предварительно бэкап

<?php
define('MODX_API_MODE', true);
define('MODX_BASE_PATH', __DIR__ . '/');
define('MODX_BASE_URL', '/');
define('MODX_SITE_URL', 'https://modx-gu.ru/');
include_once("index.php");
$modx->db->connect();
if (empty ($modx->config)) {
    $modx->getSettings();
}
include_once(MODX_BASE_PATH.'assets/plugins/simplegallery/lib/table.class.php');
$modx->invokeEvent("OnManagerPageInit");
$q = $modx->db->query("SELECT * FROM {$modx->getFullTableName('portfolio_galleries')} ORDER BY `content_id` ASC, `sortorder` ASC, `id` ASC");
$fs = \Helpers\FS::getInstance();
$sg = new \SimpleGallery\sgData($modx);
while ($row = $modx->db->getRow($q)) {
    $path = 'assets/galleries/'.$row['content_id'].'/';
    if ($fs->checkFile($path.'original/'.$row['filename'])) {
        $sg->create();
        $sg->set('sg_rid',$row['content_id']);
        $sg->set('sg_title',$row['title']);
        $sg->set('sg_description',$row['description']);
        $sg->set('sg_image',$path.$row['filename']);
        $fs->moveFile($path.$row['filename'],$path.'large/'.$row['filename']);
        $fs->moveFile($path.'original/'.$row['filename'],$path.$row['filename']);
        $name = MODX_BASE_PATH . $path.$row['filename'];
        $info = getimagesize($name);
        $properties = array(
            'width' => $info[0],
            'height' => $info[1],
            'size' => filesize($name)
        );
        $sg->set('sg_properties',$properties);
        $sg->save();
    }
}

Предполагается, что включена настройка keepOriginal, и EvoGallery сохраняет загруженные файлы в папку /original/, поэтому с файлами происходит следующее (пусть для примера есть папка assets/galleries/10/):

  • файл из assets/galleries/10/ перемещается в assets/galleries/10/large/;
  • файл из assets/galleries/10/original/ перемещается в assets/galleries/10/ и это теперь основной файл SimpleGallery.

После того, как все закончилось, можно настроить sgThumb и нарезать превьюшки.

Если не получилось, то оставайтесь с EvoGallery, не ломайте голову (: