{"id":269289,"date":"2026-01-06T15:07:02","date_gmt":"2026-01-06T15:07:02","guid":{"rendered":"https:\/\/en-ca.wordpress.org\/plugins\/pressprimer-quiz\/"},"modified":"2026-04-03T16:00:52","modified_gmt":"2026-04-03T16:00:52","slug":"pressprimer-quiz","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/pressprimer-quiz\/","author":23411440,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"2.2.1","stable_tag":"2.2.1","tested":"6.9.4","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"PressPrimer Quiz","header_author":"PressPrimer","header_description":"Enterprise-grade quiz and assessment platform for WordPress educators.","assets_banners_color":"8c95a2","last_updated":"2026-04-03 16:00:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/pressprimer.com\/quiz","header_author_uri":"https:\/\/pressprimer.com","rating":5,"author_block_rating":0,"active_installs":100,"downloads":1380,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"pressprimer","date":"2026-01-06 15:15:57"},"2.0.0":{"tag":"2.0.0","author":"pressprimer","date":"2026-01-29 17:36:04"},"2.1.0":{"tag":"2.1.0","author":"pressprimer","date":"2026-02-19 16:13:03"},"2.2.0":{"tag":"2.2.0","author":"pressprimer","date":"2026-04-03 12:58:25"},"2.2.1":{"tag":"2.2.1","author":"pressprimer","date":"2026-04-03 16:00:52"},"v1.0.0":{"tag":"v1.0.0","author":"pressprimer","date":"2026-01-06 15:06:22"}},"upgrade_notice":{"2.2.1":"<p>Fix: Resolves quiz submission failure introduced in 2.2.0. All users should update immediately.<\/p>","2.2.0":"<p>New: Question pool for random subsets, points per question display, and lazy-load attempt pagination. Premium: AI distractor generation, assignment reminders, branching logic, curve grading, and spaced repetition.<\/p>","2.1.0":"<p>New: Display option controls, customizable appearance spacing, LearnDash, Tutor LMS, LifterLMS, and LearnPress improvements, and support for new premium addon features.<\/p>","2.0.0":"<p>New: LearnPress integration, Condensed Mode, quiz access controls, and premium addon support.<\/p>","1.0.0":"<p>Initial release of PressPrimer Quiz. Enterprise-grade quizzes with AI generation and LMS integration\u2014free forever.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3433728,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3433728,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3433728,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3433728,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":{"pressprimer-quiz\/my-attempts":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"pressprimer-quiz\/my-attempts","version":"2.1.0","title":"PPQ Quiz Attempts","category":"pressprimer-quiz","icon":"list-view","description":"Display a list of the current user's quiz attempts.","supports":{"html":false,"align":true},"attributes":{"showScore":{"type":"boolean","default":true},"showDate":{"type":"boolean","default":true},"perPage":{"type":"number","default":20}},"textdomain":"pressprimer-quiz","editorScript":"file:..\/..\/build\/blocks\/my-attempts\/index.js","editorStyle":"file:.\/editor.css","style":"file:.\/style.css"},"pressprimer-quiz\/quiz":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"pressprimer-quiz\/quiz","version":"2.1.0","title":"PPQ Quiz","category":"pressprimer-quiz","icon":"welcome-learn-more","description":"Display a quiz for users to take.","supports":{"html":false,"align":["wide","full"]},"attributes":{"quizId":{"type":"number","default":0},"showDescription":{"type":"boolean","default":true},"showQuestionCount":{"type":"boolean","default":true},"showQuizType":{"type":"boolean","default":true},"showTimeLimit":{"type":"boolean","default":true},"showPassPercentage":{"type":"boolean","default":true},"showAttemptCount":{"type":"boolean","default":true},"showAttemptHistory":{"type":"boolean","default":true},"showScore":{"type":"boolean","default":true},"showPassFail":{"type":"boolean","default":true},"showTimeSpent":{"type":"boolean","default":true},"showAverage":{"type":"boolean","default":true},"showCategoryBreakdown":{"type":"boolean","default":true},"showQuestionReview":{"type":"boolean","default":true},"showRetakeButton":{"type":"boolean","default":true}},"textdomain":"pressprimer-quiz","editorScript":"file:..\/..\/build\/blocks\/quiz\/index.js","editorStyle":"file:.\/editor.css","style":"file:.\/style.css"}},"tagged_versions":["1.0.0","2.0.0","2.1.0","2.2.0","2.2.1","v1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3433728,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3433728,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3433728,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3433728,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3433728,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"PressPrimer Dashboard with key stats and quick actions","2":"Question editor with contextual help","3":"AI question generation with document upload","4":"Quiz editor with multiple quiz types","5":"Admin reporting with analytics"},"jetpack_post_was_ever_published":false},"plugin_section":[61],"plugin_tags":[18559,18342,10796,2195,583],"plugin_category":[53],"plugin_contributors":[253460],"plugin_business_model":[],"class_list":["post-269289","plugin","type-plugin","status-publish","hentry","plugin_section-featured","plugin_tags-assessment","plugin_tags-elearning","plugin_tags-learndash","plugin_tags-lms","plugin_tags-quiz","plugin_category-ratings-and-reviews","plugin_contributors-pressprimer","plugin_committers-pressprimer"],"banners":{"banner":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/banner-772x250.png?rev=3433728","banner_2x":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/banner-1544x500.png?rev=3433728","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/icon-128x128.png?rev=3433728","icon_2x":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/icon-256x256.png?rev=3433728","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/screenshot-1.png?rev=3433728","caption":"PressPrimer Dashboard with key stats and quick actions"},{"src":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/screenshot-2.png?rev=3433728","caption":"Question editor with contextual help"},{"src":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/screenshot-3.png?rev=3433728","caption":"AI question generation with document upload"},{"src":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/screenshot-4.png?rev=3433728","caption":"Quiz editor with multiple quiz types"},{"src":"https:\/\/ps.w.org\/pressprimer-quiz\/assets\/screenshot-5.png?rev=3433728","caption":"Admin reporting with analytics"}],"raw_content":"<!--section=description-->\n<p><strong>PressPrimer Quiz<\/strong> is a professional assessment plugin that bridges the gap between basic quiz plugins and expensive enterprise platforms. Create beautiful, engaging quizzes with AI-powered question generation, deep LMS integration, and the reporting features serious educators need\u2014all without monthly fees or per-student pricing.<\/p>\n\n<p><strong>This isn't a crippled trial.<\/strong> The free version is genuinely useful forever with unlimited quizzes, unlimited questions, AI generation, LMS integration, and three professional themes. We earn upgrades by delivering specialized features, not by hobbling what you get for free.<\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=YHyooYXKLo0<\/p>\n\n<h4>Why Choose PressPrimer Quiz?<\/h4>\n\n<p>Most WordPress quiz plugins were built for BuzzFeed-style trivia and basic scoring, not serious assessment. Meanwhile, built-in LMS quiz tools are afterthoughts with limited reporting, basic features, and dated interfaces. Enterprise LMS platforms cost $10,000-$100,000 per year with per-user fees.<\/p>\n\n<p>PressPrimer Quiz delivers enterprise-grade assessment and includes all of the critical features you normally expect in premium plugins at no cost:<\/p>\n\n<ul>\n<li><strong>AI-Powered Question Generation<\/strong> \u2013 Use your own OpenAI API key to generate questions from text, PDFs, or Word documents. No credits to buy, no middleware fees, no limits.<\/li>\n<li><strong>Deep LMS Integration<\/strong> \u2013 Native integration with popular WordPress LMS plugins, including LearnDash, Tutor LMS, LifterLMS, and LearnPress. Quizzes appear in lessons or topics, trigger completions, and respect enrollment\u2014automatically.<\/li>\n<li><strong>Modern, Beautiful Design<\/strong> \u2013 Three professional themes that rival SaaS products. Your quizzes won't look like forms from 2005.<\/li>\n<li><strong>Real Reporting<\/strong> \u2013 Score distribution, category breakdowns, time analytics, confidence reporting, and attempt history. <\/li>\n<li><strong>Built to Prevent Cheating<\/strong> \u2013 Server-side answer validation means correct answers are never exposed in page source. You can also limit attempts and force delays between retries.<\/li>\n<li><strong>Server-Side Resume That Works Everywhere<\/strong> \u2013 Every answer is instantly saved to the server. Students can pause on their phone and resume on their laptop without losing a single response.<\/li>\n<\/ul>\n\n<h4>Free Features That Cost Money Elsewhere<\/h4>\n\n<p>PressPrimer Quiz includes features in the free version that competitors charge for:<\/p>\n\n<ul>\n<li><strong>Unlimited quizzes and questions<\/strong> \u2013 No artificial limits<\/li>\n<li><strong>AI question generation<\/strong> \u2013 Bring your own OpenAI API key<\/li>\n<li><strong>LMS integrations<\/strong> \u2013 LearnDash, Tutor LMS, LifterLMS &amp; LearnPress<\/li>\n<li><strong>Question banks<\/strong> \u2013 Organize and reuse questions across quizzes<\/li>\n<li><strong>Dynamic quiz generation<\/strong> \u2013 Pull random questions based on category, difficulty, and question bank<\/li>\n<li><strong>Server-side save and resume<\/strong> \u2013 Students can pause and continue later from any device<\/li>\n<li><strong>Guest support<\/strong> \u2013 Optional email capture for non-registered users<\/li>\n<li><strong>Quiz access controls<\/strong> \u2013 Require login, allow guests, or let the quiz settings decide<\/li>\n<li><strong>Score-banded feedback<\/strong> \u2013 Different messages based on performance<\/li>\n<li><strong>Per-question and per-answer feedback<\/strong> \u2013 Explain correct and incorrect answers<\/li>\n<li><strong>Confidence ratings<\/strong> \u2013 Optional checkbox for students to indicate certainty<\/li>\n<li><strong>Three professional themes<\/strong> \u2013 Default, Modern, and Minimal<\/li>\n<li><strong>Question pool<\/strong> \u2013 Limit the number of questions shown per attempt so each student gets a random subset from the full list<\/li>\n<li><strong>Customizable Appearance<\/strong> \u2013 Adjust fonts, colors, spacing, and other visual styles. Includes Condensed Mode for streamlined quizzes with reduced vertical spacing.<\/li>\n<li><strong>Uncanny Automator integration<\/strong> \u2013 Triggers for quiz completion, pass, and fail, with a comprehensive set of tokens for use in automations<\/li>\n<\/ul>\n\n<h4>Perfect For<\/h4>\n\n<ul>\n<li><strong>Course creators<\/strong> using LearnDash, TutorLMS, LearnPress, or LifterLMS who need better quizzes than built-in tools<\/li>\n<li><strong>Corporate trainers<\/strong> running compliance assessments at scale<\/li>\n<li><strong>University departments<\/strong> with thousands of students needing detailed analytics<\/li>\n<li><strong>Test prep programs<\/strong> requiring support for question pools with thousands of items<\/li>\n<li><strong>Testing providers<\/strong> who need enterprise reliability without enterprise pricing<\/li>\n<li><strong>Course entrepreneurs<\/strong> selling premium educational content<\/li>\n<\/ul>\n\n<h4>Focused on What Matters for Learning<\/h4>\n\n<p>PressPrimer Quiz concentrates on multiple choice, multiple answer, and true\/false question types to deliver the best possible experience for learning and performance assessment. By focusing on these core formats, we deliver enterprise-quality features, including massive question banks, anti-cheat protection, detailed analytics, and bulletproof reliability, rather than spreading thin across dozens of mediocre options.<\/p>\n\n<h4>Built-in Integrations<\/h4>\n\n<p>PressPrimer Quiz automatically detects and integrates with popular WordPress LMS plugins:<\/p>\n\n<p><strong>LearnDash:<\/strong> Attach quizzes to courses, lessons or topics. Passing a quiz can automatically mark the lesson or topic complete. Works with enrolled students and Group Leader roles.<\/p>\n\n<p><strong>Tutor LMS:<\/strong> Attach quizzes to lessons via the course builder. Passing a quiz can auto-complete the lesson and course. Works with public courses, enrolled students, and instructor roles.<\/p>\n\n<p><strong>LifterLMS:<\/strong> Attach quizzes to lessons via meta box. Passing a quiz can auto-complete the lesson and course. Works with open\/free courses, enrolled students, and instructor roles.<\/p>\n\n<p><strong>LearnPress:<\/strong> Attach quizzes to lessons via the lesson settings panel. Link passing a quiz to lesson and course completion. Works with open courses, enrolled students, and instructor roles.<\/p>\n\n<p><strong>Uncanny Automator:<\/strong> Three triggers available: User completes a quiz, user passes a quiz, user fails a quiz.<\/p>\n\n<p>All integrations are bundled in the free version.<\/p>\n\n<h4>Premium Features<\/h4>\n\n<p>Unlock additional premium features at <a href=\"https:\/\/pressprimer.com\/\">pressprimer.com<\/a>:<\/p>\n\n<ul>\n<li><strong>Groups &amp; Assignments<\/strong> \u2013 Organize students into groups, assign quizzes with due dates, and track completion progress<\/li>\n<li><strong>Import\/Export<\/strong> \u2013 Move questions between sites or migrate from other quiz plugins with CSV, JSON, and XML support<\/li>\n<li><strong>Pre\/Post Test Analysis<\/strong> \u2013 Link quizzes as pre\/post pairs and measure learning gain with score and category comparison charts<\/li>\n<li><strong>Quiz Detail Reports<\/strong> \u2013 Per-quiz analytics dashboard with score distribution, category performance, question difficulty analysis, and score trends over time<\/li>\n<li><strong>Group Performance Reports<\/strong> \u2013 Compare groups side by side, drill into individual member results, and track weekly score trends<\/li>\n<li><strong>Question Quality Analytics<\/strong> \u2013 Identify problem questions with difficulty indexes, discrimination analysis, and distractor effectiveness reports<\/li>\n<li><strong>LearnDash Quiz Import<\/strong> \u2013 Migrate entire LearnDash quizzes with questions into PressPrimer Quiz individually or in batches<\/li>\n<li><strong>Quiz Proctoring<\/strong> \u2013 Monitor tab switches and fullscreen exits during quiz attempts with configurable flag thresholds, incident reports, per-quiz overrides, and desktop-only enforcement<\/li>\n<li><strong>xAPI\/LRS Integration<\/strong> \u2013 Send detailed learning data to your Learning Record Store for compliance and analytics<\/li>\n<li><strong>White-Label Branding<\/strong> \u2013 Remove all PressPrimer branding and customize with your own logos, colors, and plugin name<\/li>\n<li><strong>Audit Logging<\/strong> \u2013 Immutable log of every quiz, question, settings, and attempt change for compliance and accountability<\/li>\n<li><strong>Question Recovery &amp; Version History<\/strong> \u2013 Restore deleted questions and track every edit with one-click rollback to previous versions<\/li>\n<li><strong>AI Distractor Generation<\/strong> \u2013 Generate plausible wrong answers for multiple choice questions using OpenAI, with individual review and bulk generation across entire question banks<\/li>\n<li><strong>Assignment Reminder Emails<\/strong> \u2013 Automated reminder emails for students approaching assignment deadlines, with configurable timing windows and customizable templates<\/li>\n<li><strong>Branching Logic<\/strong> \u2013 Create rules that skip or jump to questions based on student answers, with path-through-quiz visualization in reports<\/li>\n<li><strong>Curve Grading<\/strong> \u2013 Apply grading curves to quiz scores with multiple methods<\/li>\n<li><strong>Spaced Repetition<\/strong> \u2013 Schedule review sessions using the SM-2 algorithm with a student dashboard, email reminders, and educator tracking<\/li>\n<\/ul>\n\n<h4>Scale-Ready Architecture<\/h4>\n\n<p>Built for serious deployment:<\/p>\n\n<ul>\n<li>Custom database tables handle 10,000+ questions and 100,000+ attempts<\/li>\n<li>Object caching support for high-traffic sites<\/li>\n<li>WCAG 2.1 AA accessibility compliance<\/li>\n<li>Full internationalization with RTL support<\/li>\n<\/ul>\n\n<h4>Documentation &amp; Support<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/pressprimer.com\/knowledge-base\/\">Knowledge Base<\/a><\/li>\n<\/ul>\n\n<h4>Source Code &amp; Development<\/h4>\n\n<p>The full uncompressed source code for all JavaScript and CSS files is available in our public GitHub repository:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/github.com\/PressPrimer\/pressprimer-quiz\">GitHub Repository<\/a><\/li>\n<\/ul>\n\n<p>The <code>\/src<\/code> directory contains all unminified source files. The plugin uses webpack for building production assets. To rebuild from source:<\/p>\n\n<ol>\n<li>Clone the repository<\/li>\n<li>Run <code>npm install<\/code> to install dependencies<\/li>\n<li>Run <code>npm run build<\/code> to compile assets<\/li>\n<\/ol>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to external third-party services. Use of these services is optional and requires explicit user configuration.<\/p>\n\n<h4>OpenAI API<\/h4>\n\n<p>This plugin offers optional AI-powered question generation using the OpenAI API. This feature is <strong>disabled by default<\/strong> and only activates when an administrator or authorized user enters their own OpenAI API key in the plugin settings.<\/p>\n\n<p><strong>What data is sent:<\/strong>\n* Text content pasted by the user for question generation\n* Content extracted from PDF or Word documents uploaded by the user\n* Configuration parameters (number of questions, difficulty level, question types)<\/p>\n\n<p><strong>When data is sent:<\/strong>\n* Only when a user explicitly clicks \"Generate Questions\" in the AI generation interface\n* Data is never sent automatically or in the background<\/p>\n\n<p><strong>What data is NOT sent:<\/strong>\n* Student quiz answers or attempt data\n* User personal information\n* Site configuration or other plugin data<\/p>\n\n<p><strong>Service provider:<\/strong> OpenAI, L.L.C.\n* <a href=\"https:\/\/openai.com\/policies\/terms-of-use\/\">Terms of Use<\/a>\n* <a href=\"https:\/\/openai.com\/policies\/privacy-policy\/\">Privacy Policy<\/a>\n* <a href=\"https:\/\/openai.com\/policies\/api-data-usage-policy\/\">API Data Usage Policy<\/a><\/p>\n\n<p><strong>Note:<\/strong> You are responsible for your own use of the OpenAI API and must agree to OpenAI's terms when obtaining an API key. API usage costs are billed directly by OpenAI to the API key holder.<\/p>\n\n<!--section=installation-->\n<h4>Automatic Installation<\/h4>\n\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong> in your WordPress admin<\/li>\n<li>Search for \"PressPrimer Quiz\"<\/li>\n<li>Click <strong>Install Now<\/strong> and then <strong>Activate<\/strong><\/li>\n<li>Navigate to <strong>PressPrimer Quiz<\/strong> in your admin menu to get started<\/li>\n<\/ol>\n\n<h4>After Activation<\/h4>\n\n<ol>\n<li>Go to <strong>PressPrimer Quiz \u2192 Settings<\/strong> to configure defaults<\/li>\n<li>(Optional) Add your OpenAI API key for AI question generation<\/li>\n<li>Create your first question bank under <strong>Question Banks<\/strong><\/li>\n<li>Build a quiz under <strong>Quizzes \u2192 Add New<\/strong><\/li>\n<li>Embed using Gutenberg blocks, shortcodes, or LMS integration<\/li>\n<\/ol>\n\n<h4>LMS Integration<\/h4>\n\n<p>If you have LearnDash, Tutor LMS, LifterLMS, or LearnPress installed, integration features enable automatically. No configuration required\u2014just edit a lesson or topic and you'll see the quiz attachment options.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20really%20free%20forever%2C%20or%20is%20it%20a%20limited%20trial%3F\"><h3>Is this really free forever, or is it a limited trial?<\/h3><\/dt>\n<dd><p>It's really free forever and not locked down. PressPrimer Quiz includes unlimited quizzes, unlimited questions, AI generation (with your own API key), LMS integrations, confidence ratings, per-question feedback, and three professional themes in the free version. We believe in earning upgrades by offering genuinely valuable premium features, not by crippling the free experience.<\/p><\/dd>\n<dt id=\"how%20does%20ai%20question%20generation%20work%3F\"><h3>How does AI question generation work?<\/h3><\/dt>\n<dd><p>You provide your own OpenAI API key in the plugin settings. When generating questions, the plugin calls OpenAI directly\u2014no middleware, no credits to purchase, no per-question fees. You pay OpenAI directly at their standard API rates (typically pennies per quiz). Generate from pasted text or uploaded PDF\/Word documents. Review and edit every question before adding items to question banks.<\/p><\/dd>\n<dt id=\"how%20does%20the%20server-side%20resume%20feature%20work%3F\"><h3>How does the server-side resume feature work?<\/h3><\/dt>\n<dd><p>Every time a student selects an answer, it's immediately saved to your WordPress database. If users close their browser, switch devices, or lose internet connection, their progress is preserved. When they return\u2014even from a different device\u2014they pick up exactly where they left off. This works for logged-in users automatically; guest users maintain progress via session tokens.<\/p><\/dd>\n<dt id=\"does%20it%20work%20without%20an%20lms%20plugin%3F\"><h3>Does it work without an LMS plugin?<\/h3><\/dt>\n<dd><p>Absolutely. PressPrimer Quiz works as a standalone quiz plugin. Use Gutenberg blocks or shortcodes to embed quizzes in any page or post. The LMS integrations are a bonus that enable automatically when an LMS is detected\u2014they don't restrict standalone use.<\/p><\/dd>\n<dt id=\"will%20this%20conflict%20with%20my%20lms%27s%20built-in%20quizzes%3F\"><h3>Will this conflict with my LMS's built-in quizzes?<\/h3><\/dt>\n<dd><p>No. PressPrimer Quiz operates independently from native LMS quiz features. You can use both simultaneously\u2014our quizzes appear via meta boxes and don't modify or interfere with built-in quiz functionality.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.2.1<\/h4>\n\n<ul>\n<li>Fixed: Quiz submission failing with \"Database error: Failed to save record\" on sites without the School addon<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>Added: Question Pool support to limit the number of questions shown per quiz attempt<\/li>\n<li>Added: Show points per question during the quiz and on the results page, with a new \"Show Points Per Question\" toggle in quiz settings<\/li>\n<li>Added: Lazy-load pagination for previous attempts on the quiz landing page; shows the first 5 attempts with a \"Show more\" button<\/li>\n<li>Added: Redesigned Status tab with two-column layout and a one-click copy button for support requests<\/li>\n<li>Fixed: Tutorial mode answer locks now persist across page reloads instead of resetting when navigating away<\/li>\n<li>Fixed: Source Bank dropdown in dynamic quiz rules now shows the bank name instead of the numeric ID<\/li>\n<li>Fixed: Category and tag dropdowns in dynamic quiz rules now show names instead of IDs<\/li>\n<li>Fixed: Quiz now appears on LearnPress preview lessons after course completion<\/li>\n<li>Fixed: Status tab attempt count now matches the Reports page total<\/li>\n<li>Fixed: Quiz and bank deletion now uses a modal confirmation dialog instead of browser confirm<\/li>\n<li>Fixed: Quiz preview page cleaned up with PHP 8.1 deprecation fix<\/li>\n<li>Fixed: Diagnostics page now shows the actual PHP memory limit instead of the WordPress constant<\/li>\n<li>Fixed: Correct and incorrect answer icons now display properly in the attempt detail modal<\/li>\n<li>Fixed: Report dates no longer show with a timezone offset in non-UTC timezones<\/li>\n<li>Fixed: Action buttons on quiz and bank pages now have distinct visual styles and correct sizing<\/li>\n<li>Fixed: Duplicate radio buttons no longer appear in the WordPress admin when Ant Design is loaded<\/li>\n<li>Fixed: Primary and retake button text now maintains readable contrast on hover<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>Added: Display option controls \u2014 show or hide individual quiz elements (description, question count, score, pass\/fail status, time spent, category breakdown, retake button, and more) via shortcode attributes or block inspector toggles<\/li>\n<li>Added: Customizable spacing \u2014 adjust line height, answer option spacing, question spacing, and container max width from Settings &gt; Appearance, with separate values for Standard and Condensed modes<\/li>\n<li>Added: Pre\/post test linking infrastructure for the Educator addon<\/li>\n<li>Added: Per-quiz proctoring override settings for the Enterprise addon<\/li>\n<li>Added: Tutor LMS instructors can now create and manage their own quizzes<\/li>\n<li>Added: Tutor LMS quiz now displays on public courses with no enrollment requirement<\/li>\n<li>Added: Tutor LMS lesson auto-completes after passing a required quiz, and course auto-completes when all lessons are done<\/li>\n<li>Fixed: Tutor LMS quiz no longer disappears after a student completes a course<\/li>\n<li>Added: LifterLMS instructors can now create and manage their own quizzes<\/li>\n<li>Added: LifterLMS quiz now displays on open\/free courses with no enrollment requirement<\/li>\n<li>Added: LifterLMS lesson Complete button reappears correctly after passing a required quiz<\/li>\n<li>Fixed: LifterLMS quiz no longer disappears after a student completes a course or for course instructors<\/li>\n<li>Added: LearnPress instructors can now create and manage their own quizzes<\/li>\n<li>Added: LearnPress quiz now displays on open courses with no enrollment requirement<\/li>\n<li>Added: LearnPress lesson auto-completes after passing a required quiz, and course auto-completes when all lessons are done<\/li>\n<li>Fixed: LearnPress quiz no longer disappears after a student completes a course or for course instructors<\/li>\n<li>Fixed: LearnPress Complete button reappears correctly after passing a required quiz<\/li>\n<li>Added: LearnDash Group Leaders can now create and manage their own quizzes<\/li>\n<li>Fixed: LearnDash Mark Complete button reappears correctly after passing a required quiz<\/li>\n<li>Fixed: Back button no longer causes an infinite confirm dialog loop during a quiz<\/li>\n<li>Fixed: Display density setting now loads correctly when editing a quiz<\/li>\n<li>Fixed: Clearing the API key now works on servers that block HTTP DELETE requests<\/li>\n<li>Fixed: Dashboard activity chart and Reports overview cards now update immediately after quiz attempts instead of serving stale cached data<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Added: LearnPress LMS integration with lesson embedding and completion triggers<\/li>\n<li>Added: Condensed Mode for streamlined quizzes with reduced vertical spacing<\/li>\n<li>Added: Quiz access controls: require login, allow guests, or use global defaults<\/li>\n<li>Added: Premium addon support with extensibility hooks for Groups, Assignments, Import\/Export, Question Analytics, xAPI, White-Label, and Audit Logging<\/li>\n<li>Fixed: Settings page now respects tab query parameter in URL<\/li>\n<li>Fixed: Global access mode setting now uses correct option name<\/li>\n<li>Fixed: Bank visibility description clarified for shared banks<\/li>\n<li>Fixed: Improved error messaging for AI generation timeouts (502\/504 errors)<\/li>\n<li>Fixed: Reports page loading when addon tabs are active<\/li>\n<li>Improved: WordPress 6.7+ compatibility for translation loading<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Three question types: Multiple Choice, Multiple Answer, True\/False<\/li>\n<li>Unlimited questions and question banks<\/li>\n<li>Visual quiz builder with fixed and dynamic modes<\/li>\n<li>AI question generation via OpenAI API<\/li>\n<li>Three professional themes: Default, Modern, Minimal<\/li>\n<li>LearnDash integration with lesson\/topic embedding<\/li>\n<li>TutorLMS integration with course builder support<\/li>\n<li>LifterLMS integration with completion triggers<\/li>\n<li>Uncanny Automator integration with three triggers<\/li>\n<li>Guest support with optional email capture<\/li>\n<li>Server-side save and resume functionality<\/li>\n<li>Score-banded feedback system<\/li>\n<li>Per-question and per-answer feedback<\/li>\n<li>Confidence ratings<\/li>\n<li>Admin reporting dashboard<\/li>\n<li>Gutenberg blocks and shortcodes<\/li>\n<li>WCAG 2.1 AA accessibility compliance<\/li>\n<li>Full internationalization support<\/li>\n<\/ul>","raw_excerpt":"Enterprise-grade quiz builder plugin with AI question generation, LMS integration, and beautiful themes. Free forever.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/269289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=269289"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/pressprimer"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=269289"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=269289"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=269289"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=269289"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=269289"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=269289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}