Start here
What you change first
- The photographs. Every tile includes an image block with an example photograph with a square crop set; click each and choose from your media library.
- The words, of which there are five kinds and only three in the section. The headline, the line under it and the button.
- How many pictures. Add one by duplicating a tile group and remove one by deleting it; the lanes follow.
- The plate. "Plate behind each tile" in the block's Cards panel, off here.
- The angle and the run. Tilt 56 and spin +24 in the block's Motion panel, with the pin toggle, the scroll length (0.5 here) and the speed (2) beside them.
- The heading levels. The masthead is an
h1and the tiles carry no headings at all, so there is nothing under it to be out of order.
The signature moment
Pictures wall to wall, nothing between them
Every other wall in this set is a wall of CARDS: the block draws a plate behind each tile, insets the content from it and rules a hairline round it, because a heading and a line of copy read at an angle need a surface to sit on. This one has no cards in it. patternpastePlate is false, so the padding, the tinted ground and the hairline are all gone and each tile is exactly the picture in it, cropped square by the wall. What is left between the pictures is 14px of the band's own colour, which is a seam and not a frame.
Theme handoff
What comes from where
From your theme
- Typeface.
- Palette.
- The seams between the pictures.
- Spacing.
Set by this pattern
- The headline is display, not a ladder rung.
- The tiles are square, and 260 is why.
- The depth, and why it is twenty-eight.
- The gap is 14 and not 0.
- The hand-off row is outside the block.
Full pattern notes
Why it works, and how it is built
Open a topic for the complete design reasoning, editing guidance and implementation notes.
Design rationaleComposition, intent and nearest alternatives
Overview
A short masthead over a wall made of nothing but photographs. Above: one display line, one sentence and one button. Below: twenty-eight square pictures with no frame, no plate and no caption between them, laid on a plane leaned 56 degrees and spun the other way from every other wall in the set, pinned for half a screen while the lanes run past. The fourth composite in the catalogue, and the first to use patternpaste/iso-wall with the tile's own surface turned off.
The signature moment: pictures wall to wall, nothing between them
Every other wall in this set is a wall of CARDS: the block draws a plate behind each tile, insets the content from it and rules a hairline round it, because a heading and a line of copy read at an angle need a surface to sit on. This one has no cards in it. patternpastePlate is false, so the padding, the tinted ground and the hairline are all gone and each tile is exactly the picture in it, cropped square by the wall. What is left between the pictures is 14px of the band's own colour, which is a seam and not a frame.
That is a composition and not a setting, because it decides everything else. There is nowhere to put a word, so there are no words: no tile titles, no captions, no dates. The masthead is the only type in the section, and it has to carry the whole of what the wall is about in one line. And because a picture is the tile, the tile has to be square: patternpasteCardWidth and patternpasteCardHeight are both 260, and the pictures stretch to that box and are cropped to cover it, so a buyer whose photographs are 4:3 and 3:2 and 1:1 gets a level mosaic instead of a ragged one.
The frame's top and bottom are faded rather than cut (patternpasteFade), which is the same argument as the seam: a hard edge would draw a frame round a wall whose whole point is that it has none, and a picture stopped dead at the screen's edge reads as a cropped photograph rather than a mosaic carrying on past it. The sides stay hard, because the wall is full-bleed and a fade there would only pull it in off the page. The fade is a MASK, so those two edges go clear and it is the theme's own ground that comes through them; the section still states no colour.
It has to work standing still, and it does. With no script the plane still carries its rotateX/rotateZ from the stylesheet, so the section is a still mosaic of the same twenty-eight pictures. With the plugin gone entirely the masthead is followed by the twenty-eight pictures as a plain stack of image blocks, then the hand-off row, in the order they were typed.
Why this is not hero-wall-field, hero-wall-index or hero-wall-rail
The three siblings all keep the plate, and all three are walls of things with words on them. This one is a wall of pictures, and three decisions follow from that rather than from taste:
- The plate is off. No other pattern in the set does this, and no other pattern in the set could: the field's posters carry a word under the picture, the index is text and nothing else, and the rail's posters are read one at a time. Take the plate away from any of those and the type falls onto the photograph, which is the one thing this catalogue never does.
- The angle is the opposite one.
patternpasteTilt56 is nearly the steepest the control goes andpatternpasteSpinis+24, where the field, the index and the rail are all at or below zero. The lanes therefore run up to the LEFT, and the wall reads as a floor seen from above rather than as a rack seen from the side. The spin control was negative-only until this pattern asked for the other half of it; the lanes still alternate direction on their own index, so what the sign changes is the composition and not the motion. - Nothing in the wall is a control.
patternpasteLiftisfalse, so no tile carries the pull button and no tile is a click target: the pull is a disclosure control, and a picture with no words under it has nothing to disclose. It is also a measurement. The pull's box is 52px square on the plane, and a plane leaned this far foreshortens it: at 390 the button's own box measures 68.7 by 38.4, which is under the 44px floorcheck-responsiveholds every tap target to (measured 2026-08-29; the same button clears the floor at 48.8 onhero-wall-field, which leans 48). A wall this steep either drops the pull or drops the tilt, and a mosaic that is only pictures is the one wall that loses nothing by dropping it. The stylesheet takes the pointer cursor away with it, so nothing promises a click that does not happen. - The pin is short.
patternpasteScroll0.5 withpatternpasteSpeed2: half a screen of scroll, run twice as fast, so the wall turns over once and lets the reader out. A long pin is for a section with something to say as it goes past, and this one says everything it has to say in the first frame. Comparehero-wall-index, which is pinned to the same half screen because it has forty-two entries to deal, andhero-wall-field, which is not pinned at all.
Make it yoursVariations and the edits to make first
What you change first
- The photographs. Every tile includes an image block with an example photograph with a square crop set; click each and choose from your media library. The block's own toolbar has "Fill tiles from media library", which deals a multiple selection into the tiles in order and saves twenty-eight trips through the modal. This is the pattern that most rewards it: filling the wall IS the work here, because there is nothing else in it.
- The words, of which there are five kinds and only three in the section. The headline, the line under it and the button. The tiles hold no copy at all, and adding a heading to one is the moment to turn the plate back on: type on a photograph is the one thing this pattern will not do for you.
- How many pictures. Add one by duplicating a tile group and remove one by deleting it; the lanes follow. Work in sevens: past twenty-one tiles the lane cap is what is running, so the depth is the tile count over seven, and a count that does not divide by seven leaves one lane a tile short and the still render zooms to cover the frame off the short one.
- The plate. "Plate behind each tile" in the block's Cards panel, off here. Turn it on and every tile becomes the card the other three walls use: padding, a ground mixed from your text colour and a hairline, with the picture inset from the edges. That is the switch that turns this pattern back into a wall of cards, and it is the one to reach for the moment a tile needs a word. "Tiles can be pulled out" is off beside it for the reason above; turn it on and every picture becomes something to open, with the pull control drawn on the photograph itself, and check that the mark still reads against the pictures you chose.
- The angle and the run. Tilt 56 and spin +24 in the block's Motion panel, with the pin toggle, the scroll length (0.5 here) and the speed (2) beside them. Spin back through zero and the lanes stand upright; spin negative and the wall leans the way its three siblings do.
- The heading levels. The masthead is an
h1and the tiles carry no headings at all, so there is nothing under it to be out of order. Where this lands on your page is still yours to check: if the page already has anh1, or the section sits under anh2, change the masthead's level in the block toolbar so the outline reads in order.
Theme behaviourInheritance, fixed decisions and contrast
What it inherits from your theme
- Typeface. Nothing states a family. The headline, the line under it, the button and the hand-off row take whatever your theme sets.
- Palette. The band is your
basewith yourcontrastas its text, the one pair every block theme is obliged to keep legible. The hand-off row's label leads onrole-label, which only our theme tool defines, and falls through tocontrasteverywhere else. No accent slug appears in any rung. - The seams between the pictures. With the plate off the block paints no surface at all inside the wall, so the 14px between one picture and the next is the band's own ground. Put this section on a dark style and the seams go dark with it.
- Spacing. Band padding, the gap between the masthead and the wall, and the hand-off row all use core spacing presets.
What it decides for itself
- The headline is display, not a ladder rung.
clamp(2.75rem, 7.2vw, 6.25rem): its size is the composition, three words holding the whole width above a wall with no other type in it, so it does not takexx-large. Everything else is on the ladder: the line under it and the hand-off paragraph takemediumas a chain, and the hand-off label is a label with its own floor at 13px and its own tracking. - The tiles are square, and 260 is why. The block's own card is fluid and lands at 216 by 156, which is a landscape card for a landscape crop. A mosaic wants one shape, and square is the only shape that takes a portrait and a landscape photograph equally badly, which is to say equally well: both are cropped to the middle rather than one of them being letterboxed.
- The depth, and why it is twenty-eight. The block lays
ceil(tiles / 3)lanes capped at seven and deals the tiles round-robin, so twenty-eight pictures is seven lanes of four with no lane short. Live, that is only the seed:view.jsclones whole lanes and whole tiles until the wall covers the frame. AT REST it is exactly the twenty-eight, and the block magnifies the plane to cover the frame off its SHORTEST lane, which is why the count is not a taste. It is the lane LENGTH that binds, not the lane count: four deep at this angle solves to about 1.5x at 1920, inside the block's own 1.6 cap, so the still render is a rack of small pictures and not a crop of three big ones. Change the count in sevens and the wall stays level. - The gap is 14 and not 0. Zero is a legitimate composition on this block and it was tried: with no seam at all the wall stops reading as a wall of frames and starts reading as one printed sheet, and the raise on a pointed-at tile has nothing to lift away from. 14 is a seam wide enough to separate two photographs of the same subject and narrow enough that the ground is never a thing the eye counts.
- The hand-off row is outside the block. It is a sibling of the wall inside the band, not part of the introduction, because the introduction renders ABOVE the frame and the whole point of the row is to be on the far side of it: a full-bleed band with nothing under it reads as the site's chrome rather than as a section. It is inset by the same
clamp(1.25rem, 4vw, 4rem)the block uses for its own gutter, so it lines up with the masthead.
Technical notesBlock mechanics, responsive behaviour and constraints
What needs the plugin
This pattern embeds patternpaste/iso-wall, a dynamic block registered by the companion plugin, which comes with your access. Install it before pasting, or the block shows the missing-block placeholder in the editor. On a live page with the plugin deactivated the front end still shows the headline, the line, the button, all twenty-eight pictures and the hand-off row as a plain stack of core blocks; only the frame, its isometric styling, the square crop and the pinned run go. Nothing you typed lives in the block itself. A visitor who has asked for reduced motion gets the still mosaic, with every picture in it.
What is not proved
The pull control on a photograph. This payload turns the pull off, so nothing here exercises it, but the block draws it whenever a plate-less wall keeps patternpasteLift on: with no surface under it the mark carries a rim and a ground mixed from your own text colour to separate it from whatever is behind it. That is a legibility argument, not a measured ratio, and nothing can be measured about a photograph a buyer has not chosen yet. If you turn the pull back on, look at the wall with your own pictures in it, and remember the tap target: at this tilt the control is under the 44px floor on a phone.
How the crop lands. The wall crops every picture square from its middle. Whether that is the right half of a photograph is a judgement about that photograph, and no gate in this repo can make it: a face at the edge of a landscape frame will be cropped out. The pattern includes example photographs; the first thing to do after pasting is look at the wall with your own pictures in it at 390 as well as on a desktop.
Included images
The copied markup includes WordPress Photo Directory example photographs. The public image URLs keep the examples visible after pasting. Select an image or cover and choose Replace to use your own Media Library files. See image credits for the sources and licenses. Pasting an image URL does not import a Media Library attachment.
The markup
Core block markup and nothing else. Copy it, then paste it straight into the block editor: WordPress reads the delimiters and rebuilds the blocks.
Fetching the markup…