4.0.0-beta.8
Pre-release
Pre-release
Added
- Add Quiz field to forms for scored questionnaires (#605). Each question supports radio buttons, checkboxes, or a dropdown; mark correct answers on static options, enable optional Weighted score for per-option points, and add Answer explanation rich text for incorrect responses. Form Behaviour → Quiz Scoring settings control pass percentage, retake restrictions (by logged-in user or IP address), and whether Ajax/client submit responses include a
quizResultpayload after a successful final-page submit. Scores persist informie_submission_quiz_resultsfor complete, non-spam submissions. - Add Survey field to forms with selectable presentation types: radio buttons, checkboxes, dropdown, Likert scale (#798), Rating star scale (#2282), and Rank drag-and-drop ordering (#605). Likert supports single- and multi-row layouts, optional Weighted score on static columns, and built-in predefined scale defaults. Rank fields preserve submitted order on validation re-render.
- Add a Results tab to the form builder when a form includes Quiz or Survey fields (#605). View per-question response counts and option breakdowns, rank-weighted preference charts, Likert scoring averages when weighted scoring is enabled, and a quiz summary (attempts, average score, pass rate, pass threshold) for scored quizzes.
- Add author documentation for Quiz and Survey fields.
- Add multi-site support with automatic site availability via Form Group site policy and per-site content translation via sparse site overrides (#2308, #84, #2724).
- Add
formie_form_site_overridesstorage,FormSiteOverridesandFormSitePropagationservices, CP site switcher with instant client-side switching, and translation icons on translatable builder fields. - Add
allowedSubmitMethodsplugin setting to restrict form submission methods to Ajax only, page reload only, or both (#1751). - Add
siteHandlerequest parameter support for headless form load and submit endpoints (#2286). - Redesign page Client Events with a dedicated Tracking tab, support for multiple named events per page, variable picker values, and server-resolved
clientEventspayloads in Ajax submit responses (#888). - Add predefined client event templates (GTM, GA4, Meta), per-page suggestions, payload preview, optional per-event conditions, and form-level default client events with apply-to-all-pages support.
- Add GraphQL
Jsonsiblings for stored rich-text content alongside existingHtmlfields (#865):submitActionMessageJson,errorMessageJson,instructionsJson,descriptionJson, andcontentJson. - Add generic
saveSubmissionGraphQL mutation for handle-based submission saves (#1007). - Add submission PDF downloads from the control panel and via
craft.formie.generateSubmissionPdf()/craft.formie.getSubmissionPdfDownloadUrl()(#1213, Discussion #1273).
Changed
- Redesign predefined/integration options UI.
- GraphQL submission mutations skip browser-only spam guards when Craft is not handling a web request.
Fixed
- Fix a HTML error with Signatures field.
- Fix headless/Ajax validation error messages using the wrong locale by applying the target site language at submission time (#1545).
- Fix Summary field Ajax refreshes ignoring custom
themeConfigclasses by round-tripping render-time theme config through the summary HTML endpoint (#1721).