Skip to content

Testimonial masonry

Testimonial masonry · sample rowOpen ↗

Renders TestimonialMasonry from @bison-lab/ui. An avatar is optional; initials from the author’s name stand in when it is empty. Once there are at least minItemsForFade quotes the grid clips at maxVisibleRows and the link shows under the fade.

payload.config.ts / collections
import { TestimonialMasonryBlock } from "@bison-lab/payload-blocks";
// In the collection's `blocks` array:
TestimonialMasonryBlock
blocks/registry.ts
import { TestimonialMasonryBlockRenderer } from "@bison-lab/payload-blocks/react";
// In the site's registry:
testimonialMasonry: TestimonialMasonryBlockRenderer,
FieldTypeNotes
eyebrowtextSmall label above the heading. Leave empty to hide the row.
title *text
descriptiontextarea
items *arrayAt least 1 row. Opens with 1 empty row; the admin field will not remove below that.
items[].content *textareaLabelled “Quote”.
items[].authorgroup
items[].author.name *text
items[].author.titletextRole or organisation, e.g. "Orthopaedic surgeon".
items[].author.avataruploadOptional. Initials from the name are used when empty. From the media collection.
linkgroupLabelled “Link”. Shown under the fade, once there are enough quotes to clip.
link.typeradioLabelled “Goes to”. One of page, external. Default "page".
link.pagerelationshipRelationship to pages.
link.hreftextLabelled “URL”. A full URL ("https://example.com"), "mailto:" or "tel:", or a site path ("/contact").
link.labeltextLabelled “Label”.
link.newTabcheckboxLabelled “Open in a new tab”. Default false.
minItemsForFadenumberHow many quotes before the grid clips and the bottom fade appears. At least 1. Default 7.
maxVisibleRowsnumberRows shown before the fade. Optional. At least 1.

* required.