A new page type that embeds a responsive and touch-enabled image gallery with strip thumbnail navigator and zoomable slides
A new page type (GalleryPage) that provides everything needed to
manage a photo gallery.
You can do bulk uploads and reorder the images by dragging and dropping
their thumbnails in a dedicated tab (Gallery) inside the CMS. The same
image can be shared among multiple galleries.
You can write your own templates and support the JavaScript library of
your choice. Out of the box the Fotorama library
is used. You can embed the default gallery block in your pages by
including ContentGallery.ss
, e.g.:
<%-- This is a typical Page.ss --%>
<h1>$Title</h1>
<div class="gallery">
<% include ContentGallery.ss %>
</div>
<div class="content">
$Content
</div>
Keep in mind the default templates only use the Height
and
ThumbnailHeight
settings: they must be set to a value greater than 0
or an error will be generated. By default they should be set by the CMS
to 400 and 64 respectively.
Alternatively, the GalleryPage.ss
layout template is provided. It
renders a full (standard) page, though it works out of the box only with
silverstrap because it relies on
some convention adopted by that theme.
This module adds some field to the Settings tab. This will allow to
customize some aspect of the gallery at run time on a per page basis,
e.g. the height of the thumbnail strip, the height of the image slide
and a flag to show or hide the captions.
The fallback values can be customized too by leveraging the SilverStripe
configuration API.
Just create your own YAML file in mysite/_config
, e.g.:
---
Name: DefaultSettings
After:
- 'gallery/*'
---
GalleryPage:
defaults:
Captions: false
Height: 480
ThumbnailWidth: 0
ThumbnailHeight: 80
The above settings will be applied to every instance of the
GalleryPage
class.
Although the project originally started as a fork of
silverstripe-gallery
by i-lateral, the actual code has been
rewrote almost from scratch by ntd and, apart
the name, practically everything else has changed.
The project home page is shared by
other SilverStripe modules and themes.
To check out the code, report issues or propose enhancements, go to the
dedicated tracker.
Alternatively, you can do the same things by leveraging the official
github repository.
The gallery module is implemented as an extension of
silverstripe-carousel,
so you must install it first. This in turn will install the
sortablefile module that
provides the drag and drop reordering feature.
To install silverstripe-gallery itself you should proceed as usual:
drop the directory tree in your SilverStripe root and do a
/dev/build/
. You will gain the new GalleryPage
type in the CMS.
If you use composer, the dependencies will
be pulled-in automatically, so you could just run the following command:
composer require entidi/silverstripe-gallery dev-master
Module rating system helping users find modules that are well supported. For more on how the rating system works visit Module standards
Score not correct? Let us know there is a problem