FAQ Kit – Product & Category FAQ Manager
/
A clothing store gets the same three questions on every jacket – does it run small, can it be machine washed, how long do returns take – and the answers live in a product description here, a CMS block there, and a support inbox everywhere else. This extension for Magento lets the merchant write each answer once: the sizing FAQ is assigned to the jackets category, the washing FAQ to the three wool jackets it concerns, and the returns FAQ to the whole store. Every jacket page then shows all three, most specific first, and nothing has to be copied.
It adds a FAQ Entries grid to the Content menu of Adobe Commerce and Magento Open Source. Each FAQ applies to the whole store, to any number of products, to any number of categories, or to a reusable FAQ widget, and can be limited to one store view. Product and category pages show their FAQ block automatically, following a product → category → store-wide cascade, and a per-store-view setting decides whether those levels are merged or only the most specific one is shown. FAQ widgets carry their own questions, layout and pair limit and are placed on any CMS page with the standard Insert Widget control.
FAQs are managed where the item is, too. The product edit form lists every FAQ that applies to the product with the level it comes from, and a product's own FAQs can be added, quick-edited, switched off or removed without leaving the product. The category and FAQ widget forms open the entry form already scoped to them and bring the merchant back afterwards.
A page carries one valid FAQPage JSON-LD, merged from every FAQ block on it,
so search and answer engines read the questions and answers as structured
data. The block is server-rendered,
cached with the page and built on the native <details> element, so the same
accordion works on Luma and Hyvä Theme without a compatibility package.
For merchants who want help writing FAQs, the separate FaqKitLlm companion adds AI generation: candidate questions and answers grounded in catalog content or pasted text, reviewed and ticked before anything is saved. It is optional and not part of this package.
FAQ Kit is a deterministic, on-premise extension for Magento Open Source and Adobe Commerce. It uses no external services, sends no data off-site, and adds three tables of its own for FAQ entries, their assignments and FAQ widgets. Storefronts: Luma, Hyvä Theme. It operates on product, category and CMS pages and does not modify the checkout flow, so it works with Magento's native checkout and any third-party checkout layer.
Key Features
- One FAQ Entries grid with search, filters, sort order, Active switch and mass actions
- FAQs assigned store-wide, to any number of products or categories, or to a named widget, per store view
- Automatic FAQ blocks on product and category pages
- Product → category → store-wide cascade, most specific first
- Per-store-view choice between merging all levels and showing only the most specific one
- Reusable FAQ widgets with accordion or list layout, collapsed state and pair limit, placed with Insert Widget
- One valid FAQPage JSON-LD per page, merged from every FAQ block on it, switchable globally and per widget
- Server-rendered, cacheable native accordion on Luma and Hyvä Theme
- Add, quick-edit, switch off and remove a product's FAQs from the product edit form
- FAQ sections on the category and FAQ widget edit forms that return you where you started
- Answers with basic formatting, everything else stripped on save and on output
- Separate admin permissions for entries, widgets and configuration
- Optional AI generation through the separate FaqKitLlm companion
Versions
Not filed. The first filing goes up with this version and carries this entry and the one below.
See CHANGELOG.public.md. Summary: maintenance release – a page that shows several FAQ blocks now carries one valid FAQPage merged from all of them instead of one per block, and the admin names the extension FAQ Kit in the menu, the configuration, the role permissions and the widget type, with every identifier, saved setting and inserted widget unchanged. Stores that translate the renamed admin phrases in their own translation file need to re-key those rows.
FAQ
A store answers the same few questions on every product of a kind – does this run small, can it be machine washed, how long do returns take – and the answers end up copied into a product description here, a CMS block there, and a support inbox everywhere else. Editing one of them means finding every copy.
FAQ Kit lets the answer be written once and assigned to what it concerns: to a category, to a handful of products, to a reusable widget, or to the whole store. Product and category pages then show the FAQs that apply to them, most specific first, and nothing has to be copied to a second place.
- The same question belongs on many products – a category's sizing note, a material's care instructions, a brand's warranty terms.
- You want a storefront FAQ page: a CMS page holding several FAQ widgets, each with its own questions, placed with the standard Insert Widget control.
- Questions differ by store view – one language or one country per view, with the same catalogue underneath.
- You want the answers in
FAQPagestructured data without hand-writing JSON-LD into a CMS block. - Your storefront is Hyvä Theme and you would rather not pay for, or wait for, a separate compatibility package.
If your store needs a handful of FAQs in one place and nowhere else, a CMS page answers that for free – the platform already has one. If what you want is a help desk – tickets, replies, a customer-facing inbox – this is not that, and a support extension fits better. If your FAQ content lives in an external knowledge base and has to stay there, this extension has no import and no API to sync it: the answers are written in the Magento admin.
A FAQ Entries grid in the Content menu holds every question and answer, with search, filters, sort order, an Active switch, mass enable, disable and delete, and an Applies to column saying what each FAQ is assigned to. One FAQ applies store-wide, to any number of products, to any number of categories, or to a named widget, and can be limited to one store view.
Product and category pages get their FAQ block automatically, following a product → category → store-wide cascade; per store view you choose whether the levels are merged or only the most specific one that has FAQs is shown. A product's FAQs can be added, quick-edited, switched off and removed from the product edit form itself, and the category and widget forms open the entry form already scoped to them and bring you back afterwards.
FAQ widgets are defined once – code, title, accordion or list layout,
collapsed state, structured-data switch, maximum pairs – and placed on any CMS
page or block. A page carries exactly one FAQPage JSON-LD, merged from every
FAQ block on it, so a page built from several widgets stays valid structured
data. The storefront block is server-rendered, cached with the page and built
on the native <details> element, so the same accordion works on Luma and on
Hyvä Theme without JavaScript. Answers keep basic formatting and everything
else is stripped, both when saved and when rendered. Admin access is three
separate role resources: FAQ entries, FAQ widgets, configuration.
There is no dedicated FAQ page with its own URL and its own FAQ categories – several extensions in this category sell that. The equivalent here is a CMS page holding FAQ widgets, which you lay out yourself.
There is no storefront search over FAQs, no voting on whether an answer helped, no comments, and no customer-submitted questions. There is no GraphQL coverage – the storefront block is server-rendered, so a headless frontend would have to read the tables itself. There is no import from a file or from another FAQ extension: entries are written in the admin, or generated with the optional companion below. Translations are per store view – the same FAQ shown in two languages is two entries, not one entry with two translations.
AI generation is not part of this package. It lives in a separate companion,
webmaster-ramos/module-faq-kit-llm, which in turn needs the on-premise
LlmProvider gateway and your own provider key. Without that companion installed
FAQ Kit is a complete, deterministic FAQ manager and every AI control stays
switched off – there is no external call, and no key to hold.