Викирама: FAQ

Викирама это довольно большой и сложносоставной рецепт. Вы можете задать свои вопросы по нему на этой странице.

Что это за «пресеты»?

Прочитайте Как работает Викирама?, пожалуйста.

Как настроить Викираму по-своему?

Site-wide (работающие по всему сайту) модификации можно внести, переопределяя переменные. Список доступных переменных см. в исходном коде phWikirama.php. Все переменные, определенные в нём через функции SDV() или SDVA() , следует определять до подключения Викирамы в (farmconfig.php). Прочие переменные должны переопределяться после. Примеры:

  • $phWikirama_JS_config['allowfullscreen'] = 0; — отключаем полноэкранный режим (до подключения phWikirama.php);
  • $Mini['thumbs'][0] = "424x424"; — изменяем размеры превьюшек (после подключения phWikirama.php)

Если вызывать Викираму из макета дизайна, она не работает.

Да. Это ограничение PmWiki. Решение состоит в вызове функций MiniHeaderFmt(); PH_mLinkMini(); после подключения Викирамы.

Кое-что из оригинального рецепта Mini не работает. Что именно?

В пресетах с использованием Fotorama (т.е. во всех, кроме Mini7:):

  • не работает синтаксис mini:: вывод превью изображения без ссылки на оригинал;
  • не работает настроечный ключ php-массива $Mini['EnableLightbox'] = 1; . Установка 0 приведет к отключению всего функционала, значения 2 и 3 эквивалентны 1.
  • в bootstrap-пресетах каждая группа превью обернута в собственный <div>

Если что-то работает не так, как ожидается, используйте Mini5:, он более совместим с оригиналом, либо совсем резервный Mini7: — он идентичен оригиналу во всем, за исключением размера превьюшек.

Как работает определение размера фотогалереи?

По-умолчанию, размер фотогалереи определяется первой фотографией. Остальные подстраиваются под него. Таково поведение Фоторамы: https://fotorama.io/docs/4/dimensions/

Я хочу проиллюстрировать статью большими статическими одиночными картинками, что делать?

Используйте один из подходов:

  • Attach: , если ресайз картинок вы сделаете на локальном компьютере;
  • Mini7: в комбинации с mini:* и (:mini 720x480:). Получатся автоматические статичные изображения указанного размера. (см. документацию)
  • Mini:, одиночные вызовы картинок в комбинацией с (:mini 720x480:) позволят сделать кликабельные изображения указанного размера;
  • Mini1:, если лень вникать во все это, а также во всех остальных случаях.

Как создать свой собственный пресет?

Пресеты: Mini8:, Mini9: свободны. При необходимости, в первую очередь рекомендуется использовать их, а не переопределять исходные.

Как изменять группировку превью для пересетов группы Bootstrap?

Никак. Значения параметров 2 и 3 $Mini['EnableLightbox'] из конфигурации Mini не реализованы (см. выше, см. ToDo)

Как сделать кнопку «открыть изображение в новой вкладке» в режиме просмотре или полноэкранном режиме? Как показывать название / подпись / комментарий в режиме просмотра?

см. Популярные сценарии применения галерей (попроще), Mini: PHP-кастомизация -- передаем HTML-код в модальное окно (посложнее)

Кнопка перехода в Native Fullscreen иногда висит в воздухе, пример на маленьких превью.

Это объясняется особенностью Fotorama: по-умолчанию, размер галереи определяется размерами первой картинки. Такая ситуация возникает при совпадении следующих условий:

  • картинки отличаются по размерам;
  • первой в галерее идет большая картинка, а маленькие позже;
  • монитор достаточно большой и маленькие картинки меньше его разрешения.

Если для вашего проекта это критичная проблема, вы можете решить ее примерно следующими путями: или отказаться от Native Fullscreen, или задать фиксированные размеры галереи, или переопределить метод масштабирования.

Любой из этих подходов может быть реализован как через «контентную модификацию» для данной страницы, так и для всего сайта через PHP (см. Как работает Викирама?)