FAQ columns
Renders FAQColumnsBlock from @bison-lab/ui. The eyebrow, title and description are the trio every marketing band opens with; they are top-level fields rather than a group so the heading is the first thing an editor sees.
Answers are plain text on purpose. A Lexical answer would pull @payloadcms/richtext-lexical into the ./react entry every consumer loads. Prose with links and lists belongs in a rich text block.
The call to action under the intro is hidden when its link is empty.
import { FaqColumnsBlock } from "@bison-lab/payload-blocks";
// In the collection's `blocks` array:FaqColumnsBlockimport { FaqColumnsBlockRenderer } from "@bison-lab/payload-blocks/react";
// In the site's registry:faqColumns: FaqColumnsBlockRenderer,Fields
Section titled “Fields”| Field | Type | Notes |
|---|---|---|
eyebrow | text | Small label above the heading. Leave empty to hide the row. |
title * | text | |
description | textarea | |
items * | array | At least 1 row. Opens with 1 empty row; the admin field will not remove below that. |
items[].question * | text | |
items[].answer * | textarea | |
cta | group | Labelled “Call to action”. Shown under the intro. Leave the link empty to hide it. |
cta.title | text | Lead-in line, e.g. "Still have questions?". |
cta.linkText | text | |
cta.type | radio | Labelled “Goes to”. One of page, external. Default "page". |
cta.page | relationship | Relationship to pages. |
cta.href | text | Labelled “URL”. A full URL ("https://example.com"), "mailto:" or "tel:", or a site path ("/contact"). |
cta.newTab | checkbox | Labelled “Open in a new tab”. Default false. |
sticky | checkbox | Pin the intro column while the answers scroll. Default true. |
type | select | One of single, multiple. Default "single". |
collapsible | checkbox | Allow the open answer to be closed again. Single mode only. Default true. |
* required.