Start here
All documentation Installing JMGallery Your first gallery How JMGallery stores thingsFilling the library
Adding photos Custom fields The library and bulk editing CSV export and importShowing photos
Building a display Grid, masonry and list Shortcodes The archive page and filters Single item pages The Elementor widgetPro features
Video Captions, backgrounds, hover Protecting your photos Downloads and sellingReference
Settings reference Licences and updates For developers TroubleshootingEvery gallery item has a page of its own. One site-wide layout decides how its pieces are arranged; the fields you ticked decide what appears.
Where it lives
New installs use /gallery-item/<name>/. Sites that installed before 3.11 keep
/photo/<name>/, because that slug is already in their permalinks, sitemap and
anywhere they have been linked to. Either way it is yours to change under
Settings › URLs; visit Settings › Permalinks and
click Save once afterwards.
In the WordPress admin these items are called Gallery Items. The post type is
still jmz_media underneath, and nothing stored depends on the label.
The pieces
A layout is an arrangement of these. Which ones it includes is listed in the table below; whether each has anything to show is decided by the item.
- Breadcrumb — Gallery › title, linking back to the archive.
- The photo, at your preview size, in the lightbox on click. A video item shows its player here instead.
- The title.
- The caption — the item’s excerpt, when it has one.
- Action buttons, with Pro: Download, Buy.
- Fields — every field marked On page, in the order you set on the Fields screen. Empty fields are skipped rather than shown blank. Tag values link to their own archive pages; text and number values link to a filtered archive.
- Description — the item’s post content, when it has any.
- Pixel dimensions of the published size.
- Previous / next links, when switched on.
- Related items.
Choosing a layout
Settings › Item page layout. Pick one, then click Save settings at the bottom; a reminder sits under the picker until you do. The setting is site-wide: nothing is stored per item, and every item page changes at once.
| Layout | What it does | Leaves out | |
|---|---|---|---|
| Classic | Image left, details right. The original layout. | — | |
| Stacked | Image full width, details underneath. | Dimensions | |
| Minimal | Image, title and caption only. The block is only as wide as the photo. | Breadcrumb, buttons, fields, dimensions, related | |
| Card | PRO | Framed and centred, like a print. | Breadcrumb, dimensions, previous / next |
| Hero | PRO | Title and details over the image. | Dimensions |
| Catalog | PRO | Every field in a table beside the image. For archives and collections. | Caption |
| Sidebar | PRO | Details left, larger image right. | Dimensions |
| Filmstrip | PRO | Related items as a thumbnail strip directly under the image. | Dimensions, previous / next |
| Editorial | PRO | Title first, fields inline beneath it, then the image, then a long caption. | Breadcrumb, dimensions |
The display builder’s Click opens control names the layout in use whenever a click opens the item page, and links straight to the picker, since the layout belongs to the site rather than to the display.
Pro layouts without a licence. Without Pro the picker shows the three free layouts. If a Pro layout was chosen and Pro is later deactivated, pages fall back to Classic until it returns. A lapsed licence is gentler: the layout you chose keeps rendering, and only the picker locks the Pro choices until you renew.
Related items
Two settings under Settings › Single item page:
| Related items | How many to show. Zero turns the section off. Default 6. |
|---|---|
| Related by field | Which field decides relatedness. Items sharing a value with this one are candidates. Default People. |
The heading names the field, so visitors can see why those items are there: Related by Album, Related by Tags. It reads Related items if that field has since been removed.
A tags field usually gives the most useful results, because photos share several tag values and the overlap is meaningful. Relating by a date field tends to produce a list of things that happened to be uploaded nearby.
Previous / next links
Off by default. Settings › Single item page › Show previous / next links adds a pair of links that sit together under the image (or wherever the layout puts them). They step through the whole library in date order, not through the display a visitor came from. Card and Filmstrip do not include them.
Comments
Off by default. Settings › Single item page › Allow comments on item pages switches your theme’s comment form on for every item at once.
Why this is here and not under Discussion. WordPress stores the comment setting on each post at the moment it is created, so turning comments off under Settings › Discussion only affects items added afterwards. A library imported before that change would keep its open comment forms with nothing in the admin to explain why. This switch covers the whole library without rewriting a row.
Video items PRO
A YouTube or Vimeo item shows the player in place of the photo. A self-hosted video item shows the browser’s own video player, with the poster image as its frame. Fields, layouts and related items work exactly as they do for photos.
Buttons PRO
Buttons appear only when the item has the data for them:
- Download — when a field keyed
downloadexists and is on for that item, the item is published, and there is a local file to hand over. A YouTube or Vimeo link has nothing to download, so no button appears. An item with a price and a buy link is for sale, so it shows Buy instead. - Buy — when both a
priceand abuy_urlare set. It carries the formatted price and links out to whatever checkout you use.
Beyond the nine layouts
The picker rearranges the pieces; it does not add new ones. For anything further, classic
themes: copy templates/single-photo.php from the plugin folder into your theme and
edit it there. Block themes: edit the single template in the Site Editor, or build your own around
. Developers can register whole layouts and new block types through
jmz_single_layouts and jmz_single_block; see
For developers.