Phpthumbof и генерируемые имена файлов Новый

Дополнение: Phpthumbof

Всем привет,

Один из вариантов генерации имен файлов в Phpthumbof выглядит как кэш md5 и id ресурса на котором он выводится, эти настройки находятся в файле phpthumbof.class.php, а именно строка 306:

$this->cacheFilename .= '.'.md5(serialize($this->options)).$this->modx->resource->get('id');

Здесь можно удалить md5 или id, но так как я не дружу с php не могу сделать чтобы вместо md5 и id выводился размер изображения, т.е. при добавления изображения «filename.jpg» которое должно выводиться в одном превью с размером 80x40, а в другом с размером 200x100, должны генерироваться два файла, один «filename_80x40.jpg», второй соответственно «filename_200x100.jpg».

Может есть у кого решение?
18 april 2017, 05:03    maxx32456   
0    120 0

Comments (6)

  1. Sergey Perepechin 18 april 2017, 13:26 # 0
    Если в кратце, то не зря же сделали serialize($this->options), помимо желания получить файл вида:
    один «filename_80x40.jpg», второй соответственно «filename_200x100.jpg»
    Может существовать куча доп опций. так вот чтоб ваши картинки случайно не перетёрли в кэше друг друга и делается имя файла из всех опций в md5.

    Но если уверены что такого на Вашем сайте никогда не случится, то можно:
    1. напрямую внеспи изменения в компонент — все изменения потеряются при обновлении
    2. написать собственную обёртку для него (вижу этот вариант более правильным)
    1. Андрей 18 april 2017, 16:15 # 0
      Попробуйте дополнение phpthumbon.

      Пример:
      {'phpthumbon' | snippet : [
          'input' => '/userdata/med_1.jpg',
          'options' => 'w=240&h=100&zc=1'
      ]}
      
      //Результат
      /assets/cache_image/userdata/med_1_240x100_6da.jpg
      
      1. maxx32456 18 april 2017, 16:44 # 0
        Спасибо, попробую.
      2. maxx32456 18 april 2017, 16:36 # 0
        Имена изображений естественно уникальные, плюс добавляю id ресурса для которого они и были загружены. Изменения в компонент мне и нужны, поэтому и спрашиваю, возможно кто-то реализовывал такой вариант. Данное изменение будет правильно не только с «эстетической» точки зрения но и привлекательней для поискового продвижения:

        filename.6a213f6166813495c48465047e0adc2e1.jpg vs filename-100x50.jpg

        — Ну если ситуацию с md5 я еще могу понять, то приблуда с добавлением всех id ресурсов на котором выводятся превью (включен по дефолту) это что-то с чем-то, к примеру, у меня анонсы с превью тех же новостей выводятся на каждой странице, если таких страниц 100, а анонсов 10, то получается будет сгенерировано 1000 одинаковых превью, очень оптимальное решение.
        1. maxx32456 18 april 2017, 16:37 # 0
          Спасибо, попробую.
          1. maxx32456 18 april 2017, 23:00 # 0
            phpthumbon подходит полностью, только, может кто знает, как удалить из названия картинок 3-х символьный md5 через phpthumbon.make_cachename, а еще лучше задать имя типа filename-100x50.jpg?
            Как это сделать через редактирование кода я понял, но хотелось бы через phpthumbon.make_cachename, если возможно.
            You need to login to create comments.