All changelogs

Plugixa Exam Changelog

A modern exam and quiz plugin with a React admin panel, a subject-organised question bank, exams built from fixed lists or random pools, a server-timed runner with autosave, and automatic grading.

Latest
v1.1.0
Released
Sep 25, 2026
Total releases
2

v1.1.0

Latest

New 14

  • New in premium: sell exams through WooCommerce. Switch on "Enrolment required" on an exam and only people who have bought it, or been given access by you, may sit it. Create the product from the exam's new Sales tab, or add an "Exam access" tab to any simple or variable product. Each purchase can last a number of days and include a number of attempts; a variable product can sell 30 days and 90 days at different prices.
  • Access follows the order: it starts when the order is paid, stops on a refund, a cancellation or while it is on hold, and comes back if the order is paid again or restored from the trash. What a customer bought is copied onto their order, so later changes to the product never reach back into it.
  • Renewing early runs on from the current end date instead of wasting the days left, and is usable at once.
  • The exam page shows a price and a Buy button to anybody who may not sit it yet, the catalogue shows the price on the card, the product page lists what is included, and the order confirmation, the order emails and a new My exams tab in the customer's account all link straight into the exam.
  • A cart holding an exam requires an account at checkout; exam-only orders complete themselves once paid.
  • Refunding a purchase withdraws the certificates it paid for (a setting, on by default); the certificate can be restored.
  • New screen: People → Enrolments, to see who holds access to which exam, grant access by hand, change the end date or the attempts, revoke and restore. A new Enrolments permission area in Roles.
  • An email reminds learners a few days before their access ends, unless they have already renewed.
  • New webhook events: enrolment.granted and enrolment.revoked.
  • New webhook event: attempt.regraded, sent when a marker changes the result of an attempt that was already graded, with the result before and after. attempt.graded still fires once per attempt.
  • Certificates follow a re-mark: turning a fail into a pass awards the certificate, turning a pass into a fail withdraws it (the verification page then says so), and passing again restores the same certificate with its number. A certificate an administrator withdrew stays withdrawn.
  • The Withdraw dialog has a field for the reason it asks for, and the certificate list shows why each certificate was withdrawn.
  • An "Exam access" box on WooCommerce's order screen shows what an order holds, with a button to re-sync it.
  • Works with the WooCommerce Checkout block and with high-performance order storage. Needs WooCommerce 9.0 or later.

Improved 5

  • LMS bridge: verified end to end against Tutor LMS, LifterLMS and LearnDash 5.1.10.
  • LMS bridge: the course picker is on the exam's Access tab, searches every course, and warns when the exam's settings mean the link would keep nobody out. A link is checked when it is saved: the course must be published, and a nominated lesson must belong to it.
  • LearnDash: an exam limited to a course's learners admits only people LearnDash itself still lets in - no longer anyone whose access has expired or whose group has ended. An Open course cannot be linked, because nobody enrols on it.
  • LTI: the score sent back to the LMS gradebook follows a marker's corrections, and waits until the exam's results are released.
  • The plugin's entry in the WordPress admin menu is now called "Plugixa Exams".

Fixed 9

  • LMS bridge: a linked course is completed when a marker turns a fail into a pass, and not before the exam's results are released.
  • LMS bridge: a learner who loses access to an exam partway through a paper - unenrolled from the linked course, for example - can no longer save or submit it. Restoring their access lets them carry on where they stopped.
  • An exam that several modules each assigned to a learner was listed once per module on their My exams page.
  • A learner's My certificates page listed a certificate before the exam's results were released.
  • Passing an exam linked to a LearnDash course did not complete the course unless it had no lessons.
  • Learners launched from an LMS through LTI 1.3 were sent back to the exam page after pressing Start, and each press used up an attempt. The attempt limit now applies to them as to everyone else.
  • A damaged LTI signing key made submitting fail for learners launched from an LMS. It now only stops the score being sent back.
  • With Tutor LMS active, an attempt whose number matched the ID of a Tutor course could not be saved or submitted.
  • "Who may sit this" said nobody could sit an exam that a linked course lets people into.
Read the article: Plugixa Exam 1.1.0: Sell Exam Access with WooCommerce

v1.0.0

First public release.

In this release 21

  • Question bank organised by a nestable subject tree and free-form tags, with rich text stems, explanations and essay rubrics.
  • Seven question types in the free version: multiple choice with one answer or several, true/false, short answer, essay, fill in the blanks, and picture choice.
  • Images uploaded straight from the question editor, validated by decoding the file rather than trusting its name.
  • Exams built from sections that are either a fixed list of questions or a pool with rules, with questions and options shuffled independently.
  • A runner with server-side timing, a paper frozen at the moment the attempt starts, autosave, pause and resume, and a scheduled sweep that closes abandoned attempts.
  • The runner degrades to an ordinary form post, so it works with JavaScript switched off.
  • Automatic marking on submission with partial credit, numeric tolerance, regular expression matching and optional negative marking. Essays and file uploads queue for a person with the rubric beside them.
  • Result release policies: immediately, when the exam closes, on a date, or by hand.
  • Four access modes - open, signed in by role, access code, and named guest - with server-enforced attempt caps and cooldowns.
  • Learner portal at /my-exams/, plus five blocks and ten shortcodes for the catalogue, a single exam, search, results and certificates.
  • Import from CSV, Aiken, GIFT, Moodle XML and QTI; export to CSV, Moodle XML and QTI.
  • Five seeded roles across twelve permissions, with "edit own" scoping enforced for both questions and exams.
  • Five seeded email templates sent from a queue drained on a schedule, composed in the language of the person receiving them. Pro adds a sixth for scheduled reports.
  • GDPR exporters and erasers, so a personal data request made through WordPress's own tools covers exam data too.
  • Arabic, French, German and Spanish bundled, with right-to-left layouts across the admin and the front end.
  • An App Manager that turns individual capabilities off, blocking them at the endpoint rather than hiding them from the menu.
  • Pro adds seven more question types, certificates with a drag-and-drop designer and public QR verification, live invigilation, analytics with item analysis, a gradebook, cohorts, prerequisites, custom fields, version history, practice mode, multilingual content, LaTeX maths rendering, integrity signals, opt-in leaderboards, a demo dataset, AI question drafting with your own API key, LMS bridges for Tutor LMS, LearnDash and LifterLMS, LTI 1.3, signed webhooks and scoped API tokens.
  • Result emails were only sent while an administrator had the notifications screen open. The queue is now drained on a schedule, as intended.
  • On a site using Polylang with language directories, an exam had no address in any language but the default. All six front-end routes now answer under a language prefix, in the free version as well as Pro.
  • On a Pro site running WooCommerce, every front-end page could render blank because the API-token listener asked WordPress for its own REST address during plugin load.
  • Switching Images off in the App Manager also disabled the picture question types, so their papers would have scored zero without warning. It now only removes the upload button.