# SW FAQs Simple — AI Agent Reference **Module name:** SW FAQs Simple **Use this document when:** The user asks about the SW FAQs Simple HubSpot module, FAQPage schema, inline FAQ rows, HubDB-backed FAQ rows, page-path/group-key matching, or how to style FAQ sections. **Master version number (check `module.html`):** 2026.05.12.18.34 --- ## 1. Overview **SW FAQs Simple** creates a visible FAQ section for website pages and blog posts. The same visible questions and answers can optionally output **FAQPage** JSON-LD schema. It supports two content sources: - **Inline Repeater** — best for simple portals or one-off pages. Editors add each Question and Answer directly in the module. - **HubDB** — best when FAQs are reused or when Smithworks/AI agents will update rows centrally. Rows are matched by current page path or by a shared group key. Use **FAQPage** schema only when the same FAQ questions and answers are visible on the page. Do not use QAPage for this module; QAPage is for user-submitted answers to one question. --- ## 2. Content Tab - **Enable Module** — Turns the module on/off. - **Section Heading** and **Section Heading Level** — Optional title above the FAQ list. - **Intro Content** — Optional paragraph or rich text above the FAQ rows. - **Output FAQPage Schema** — Emits FAQPage JSON-LD from the visible rows when enabled. When **Section heading** is set, includes top-level `FAQPage.name` from that heading. - **FAQ Source** — Choose **Inline Repeater** or **HubDB**. - **FAQ Items** — Repeater shown only when FAQ Source is Inline Repeater. - **Question** — Visible FAQ question; also used as the schema Question name. - **Answer** — Visible FAQ answer; also used as the schema acceptedAnswer text. - **HubDB Settings** — Shown only when FAQ Source is HubDB. - **HubDB Table ID** — Table ID for FAQ rows. The Smithworks default is `2225626814`; other portals need their own FAQ table ID. - **Association Mode** — Match current page path or use a group key. - **Group Key** — Shared key when Association Mode = Group Key. - **Page Paths Format** — Use one or more root-relative paths separated by a pipe, for example `/blog/example|/services/example`. - **Module Inner: Background Video** — Source and poster fields when Style -> Module Background Settings -> Module Inner Background Options = Video. --- ## 3. Style Tab ### Module Settings Controls the shell dimensions and spacing: - **Module Outer Spacing** — Space around the full module band. - **Max Module Outer Width** — Width of the optional outer band. - **Module Inner Spacing** — Space around/inside the inner FAQ shell. - **Max Module Inner Width** — Width of the FAQ shell. - **Module Height** groups — Optional height controls by breakpoint. ### Module Background Settings This module follows the standard **Module Outer / Module Inner** pattern. - **Module Outer Background Options** — Optional full-band treatment: None, Theme Color, Custom Color, Gradient, Image, or Divided/Split. - **Module Outer Border Style / Position / Weight / Color** — Optional border on the outer band. Position can be top only, bottom only, or both. - **Module Inner Background Options** — Background behind the FAQ content: Theme Color, Custom Color, Gradient, Image, or Video. - **Override Module Inner Border** — When off, the inner layer uses theme defaults. When on, editors can set the full inner border and radius. - **Module Inner Border Style / Weight / Color / Radius** — Custom full border and corner radius for the FAQ shell. Default styling for new instances: Module Inner custom color `#45a1d7` at 5% opacity; solid 1px `#45a1d7` border at 25% opacity; 3px radius. ### Content Colors Controls FAQ content text and link contrast. Use when the Module Inner background needs explicit text or link colors. ### FAQ Layout Settings Controls spacing for the heading, intro, and FAQ rows. Background, border, and radius are controlled by **Module Inner**, not by FAQ Layout Settings. --- ## 4. Common Tasks - **Add FAQs directly on a page:** Set **FAQ Source** to **Inline Repeater**, then add rows under **FAQ Items**. - **Use HubDB rows:** Set **FAQ Source** to **HubDB**, confirm the table ID, and choose page-path or group-key matching. - **Tie HubDB rows to one page:** Set Association Mode to **Match Current Page Path** and put the page path in the row's `page_paths` column. - **Reuse the same FAQ set on multiple pages:** Set Association Mode to **Group Key** and use the same `group_key` value on the module and HubDB rows. - **Enable FAQ schema:** Turn on **Output FAQPage Schema** only when every schema row is visibly rendered on the page. - **Change the FAQ panel color or border:** Use **Style -> Module Background Settings -> Module Inner Background Options** and **Override Module Inner Border**. - **Add only a top outer border:** Use **Module Outer Border Style** and set **Module Outer Border Position** to **Top Border Only**. --- ## 5. HubDB Table Columns Recommended columns for the FAQ table: | Label | Column name | Type | Purpose | |-------|-------------|------|---------| | Question | `question` | Text | Visible FAQ question and schema Question name. | | Answer | `answer` | Rich text | Visible FAQ answer and schema acceptedAnswer text. | | Page Paths | `page_paths` | Text | One or more root-relative paths separated by `|`. | | Group Key | `group_key` | Text | Shared reusable FAQ group key. | | Sort Order | `sort_order` | Number | Optional row ordering. | | Enabled | `enabled` | Boolean | Optional show/hide control. | --- ## 6. CSS Hooks Root: `.sw-faqs`. Module Outer: `.sw-faqs__module-outer-root`, `.sw-faqs__module-outer-bg`, `.sw-faqs__module-outer-inner`. Inner shell: `.sw-faqs__container`, `.sw-faqs__inner`. Content: `.sw-faqs__heading`, `.sw-faqs__intro`, `.sw-faqs__list`, `.sw-faqs__item`, `.sw-faqs__question`, `.sw-faqs__answer`. --- ## 7. Document Version - **2026-05-26 / Finish Up 2026.05.26.23.52:** HubDB related post links now render with a dot separator (`·`) between titles (instead of commas), while still showing up to 3 matched posts from `related_posts_urls`. - **2026-05-20 / Finish Up 2026.05.20.23.15:** FAQPage JSON-LD includes `name` from **Section heading** when set. - **2026-05-12 / Finish Up 2026.05.12.18.34:** Initial shipped documentation for **SW FAQs Simple**. Covers inline repeater and HubDB modes, FAQPage schema, HubDB association options, Module Outer / Module Inner styling, default FAQ panel styling, and outer border position.