phpThumbOn и название кэшированного файла

Приветствую!
На сайте используется phpThumbOn. Как реализовать кастомные названия картинок?

В документации нашел такой параметр:

phpthumbon.make_cachename

Сниппет должен вернуть сериализованный массив со следующими ключами:
_cacheFileName (имя файла с полным адресом относительно корня сервера)
_cacheSuffix (суффикс в имени кеш файла)
_globThumb (шаблон поиска других превьюх этого же файла)

К сожалению в написание сниппетов у меня не очень. Подскажите в какую сторону копать или может быть у кого-то есть уже готовые примеры.

Заранее благодарен!
Глеб
05 июля 2016, 07:49
modx.pro
3 108
0

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

Павел Гвоздь
06 июля 2016, 13:20
+1
А какую именно кастомизацию нужно сделать? Вот код сниппета (нужно создать и указать в настройке phpthumbon.make_cachename), который выполняет всё то-же самое, что выполняется в компоненте с названиями превьюх:
// Папка в которой лежат превьюхи текущей картинки
$cacheFileDir = rtrim($phpThumbOn->_config['_cachePath'],'/').'/'.$filename;

// Для поиска других превьюх с этого же файла
$_globThumb = $cacheFileDir."_[0-9]*x[0-9]*_???.{jpeg,gif,bmp,jpg,png}";
$w = isset($phpThumbOn->_config['_options']['w']) ? $phpThumbOn->_config['_options']['w'] : 0;
$h = isset($phpThumbOn->_config['_options']['h']) ? $phpThumbOn->_config['_options']['h'] : 0;

// Уникальный суффикс в имени файла превьюхи
$_cacheSuffix = $w.'x'.$h.'_'.substr(md5(serialize($phpThumbOn->_config['_options'])),0,3);

// Кеш файл превьюхи
$_cacheFileName = $cacheFileDir . "_". $_cacheSuffix . "." . $phpThumbOn->_config['_options']['f'];

return serialize(array(
    '_cacheFileName' => $_cacheFileName,
    '_cacheSuffix' => $_cacheSuffix,
    '_globThumb' => $_globThumb,
));
Его можно подкорректировать под свои нужды.
    Глеб
    06 июля 2016, 13:26
    0
    Кастомизация нужна, исключительно чтобы кириллицы в названии файла не было.
      Павел Гвоздь
      06 июля 2016, 14:13
      0
      А откуда качал пакет? Из оф репа или модстор?
        Глеб
        06 июля 2016, 14:21
        0
        modx.com (официальный реп.)
          Павел Гвоздь
          06 июля 2016, 14:29
          0
          Я чуть больше полу года назад попросил Евгения Борисова (автор пакета до версии 1.3.0) передать поддержку и доработки над пакетом мне, он любезно согласился, но в modx.com 1.3.1-pl выкладывал не я и в связи с этим не могу обновить пакет там. Так что исправления, которые вносил я (по корректировке кириллицы в названиях превьюх) есть только в версии 1.3.1-pl на modstore.pro. Качай отсюда.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
10