Синтаксис Mini1:* 1 фото во всю ширь, Fotorama в контенте страницы

Выводит фотографии с использованием fotorama.io. Все вызванные одной командой фотографии автоматически объединяются в галерею. Превьюшки генерируются автоматически. Сами фотографии подгружаются по мере прокрутки по одной. Фотографии вписываются в 100% ширину области, в которой они вызваны:

Маленькие фотографии не растягиваются, а размер области галереи определяется первой фотографией группы:

Одиночный вызов фотографий можно использовать для типичной иллюстрации текстовых материалов:

При использовании внутри таблиц, необходимо добавить к таблице style='table-layout: fixed'Иначе автоматическое определение размеров не будет работать

Поведение галереи можно тонко модифицировать, см. Mini: контентная кастомизация -- модификации вызова простой Fotorama

Особенности практического применения пресета

Использование при встраивании в художественный дизайн

При внедрении вот в такой дизайн:

возникла идея создать такую верстку, чтобы галерея выглядела аккуратно при:

  • любом входном соотношении сторон фотографий, лишь бы они были достаточно горизонтальными;
  • любых разрешениях экрана устройства, т.е. еще и в мобильном/планшетном и т.д. виде, причем во всех случаях использовался только один файл превью.

Для того, чтобы обеспечить "красивое" отображение в предложенном дизайне при почти любом соотношении сторон входных кадров, было сделано следующее: фотографии встраивались в блок 1306х576 по центру, все что не влезало по вертикали — обрезалось. Итог таков, что достаточно большая фотография получалась визуально точно нужного размера, даже если у нее не такое соотношение сторон. Но у Фоторамы есть особенность — размеры последующих фотографий определяются по размерам первой. Таким образом, если заявочная обрезается тогда и только тогда, когда ее размеры не соответствуют нужному блоку 1306х576 (и это логично и правильно), то все последующие обрезаются всегда, если обрезалась Заявочная. Эта особенность проявилась в том, что если в галерее первая фотография по соотношению сторон слишком сильно отличалась от целевого размера и последующих фото, они (последующие) обрезались неоправданно сильно, и кнопка для перехода в Native Fullscreen зачастую выезжала за границы видимости. В итоге пришлось отказаться от Native Fullscreen.

Итого: Fotorama рекомендуется использовать саму по себе, без вписывания куда-либо еще.

Историко-техническое пояснение php-конфигурации

Конфиг выглядит так:

  
  // Mini1:*
  $Mini['thumbs'][1] = "64x64";
  $Mini["MiniFmt1"]  = "<div class='fotorama' data-allowfullscreen='native' data-nav='thumbs'>%s</div>";
  $Mini["LinkFmt1"] = '<a href="%2$s" data-thumb="%1$s"></a>';  
  $Mini["ImgFmt1"] = '%1$s';

Почему? Объясняю.

Фоторама не использует превью для основного изображения. Другими словами, основное изображение всегда выводится "как есть", т.е. сжимается в браузере.
С этим можно что-то делать, но сложно, путем комбинации двух вызовов Mini.

Но лучше плюнуть, потому что у нее есть замечательное свойство Lazy load. Суть в том, что при загрузке страницы сразу загружаются только первые 2 картинки. Остальные — по мере пролистывания. Таким образом, в случае открытия на весь экран, или промотке к следующему фото это работает очень быстро (картинки уже загружены).

Поэтому, решено не городить, а, наоборот вписаться в архитекту Фоторамы, и сгенерить превьюшки для превьюшек. Поэтому они размером 64х64, и код у них такой, какой есть.

Кстати, если убрать data-nav='thumbs', то превьюшки не только превратятся обратно в точки, но и перестанут генериться.