Start here
What to change first
The treatments, times and prices, the category names and their notes, and the date the prices apply from. Duplicate a row to add a treatment; the last row in each table carries the bottom rule.
The signature moment
Time and price read straight down
Two narrow columns, time and price, run down the right of every table. Each row is a flex group that never wraps: the time and the price are fixed columns of 5rem and 7rem, the price set right, and the treatment takes exactly what is left (calc(100% - 13.5rem)), so a fixed column never shrinks when a long name wraps. A visitor comparing "how long" and "how much" reads down a column rather than across a sentence, and the rules between rows carry the eye. The mark is structural, three columns and a rule per row, so it holds in greyscale.
Theme handoff
What comes from where
From your theme
- The ground is
baseand every line of type iscontrast, each a two-rung chain, at 4.5:1 or better in the stock themes. - The rules are
currentColor. - The label and the header row start on
role-labeland fall through tocontrast. - The heading is off the type ladder on purpose, a bare
clamp(2.75rem, 5.6vw, 6rem); category names sit on the ladder atx-large, notes atmedium. - The button is your theme's filled button; the typeface is your theme's.
Set by this pattern
- Each band is two columns of 32 and 68 per cent, stacking below 782px with the category name first.
- On a phone the treatment name wraps to two lines and the time and price columns keep their width, because the name's width is stated rather than left to grow.
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 price list for a salon, a spa or a clinic. A tracked label, a display heading and a line on when the prices apply open the section. Each category is then a band: its name and one note at the left, and at the right a ruled table with a header row, one treatment per row with its time and its price. A note on cancellations and one button close it.
The signature moment: time and price read straight down
Two narrow columns, time and price, run down the right of every table. Each row is a flex group that never wraps: the time and the price are fixed columns of 5rem and 7rem, the price set right, and the treatment takes exactly what is left (calc(100% - 13.5rem)), so a fixed column never shrinks when a long name wraps. A visitor comparing "how long" and "how much" reads down a column rather than across a sentence, and the rules between rows carry the eye. The mark is structural, three columns and a rule per row, so it holds in greyscale.
The rows are the second mass on the section, a bare clamp(1.0625rem, 1.3vw, 1.3125rem), above body size.
Make it yoursVariations and the edits to make first
What to change first
The treatments, times and prices, the category names and their notes, and the date the prices apply from. Duplicate a row to add a treatment; the last row in each table carries the bottom rule.
Theme behaviourInheritance, fixed decisions and contrast
What it inherits from your theme
- The ground is
baseand every line of type iscontrast, each a two-rung chain, at 4.5:1 or better in the stock themes. - The rules are
currentColor. - The label and the header row start on
role-labeland fall through tocontrast. - The heading is off the type ladder on purpose, a bare
clamp(2.75rem, 5.6vw, 6rem); category names sit on the ladder atx-large, notes atmedium. - The button is your theme's filled button; the typeface is your theme's.
What it decides for itself
- Each band is two columns of 32 and 68 per cent, stacking below 782px with the category name first.
- On a phone the treatment name wraps to two lines and the time and price columns keep their width, because the name's width is stated rather than left to grow.
Technical notesBlock mechanics, responsive behaviour and constraints
The Styled look
shell-and-mulberry is a calm salon: shell #f5ebe6 ground, deep plum #2d1f24 type (13.4:1) and mulberry #7c2e4d prices, header row, label and pill button (7.6:1), with Optima headings over Avenir Next rows.
Questions
Price list treatments: common questions
Does Price list treatments need a plugin?
No. It is built only from core WordPress blocks (button, buttons, column, columns, group, heading and paragraph), so it pastes into the block editor with nothing to install.
Will Price list treatments match my theme?
Choose by variation. Treatment table takes your theme’s palette; Shell and mulberry brings its own colours.
How many variations does Price list treatments have?
2: Treatment table and Shell and mulberry. Each is its own markup; choose one in the toolbar above the preview before you copy.
Is Price list treatments free?
It is included with a subscription, with every Core Pattern and variation. 56 Core Patterns are free to copy without one.
Which WordPress version does it need?
Requires a block theme on WordPress 7.0. Classic themes and page builders are outside our supported setup. Adaptive patterns use the block theme’s colour, spacing and typography presets; styled variations declare their own colours or type.
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…
Variation: Shell and mulberry
Fetching the markup…