LearnDash Advanced Quizzes - Overview

Installation / Setup Instruction:

The following are the step by step instructions to setup Learndash Advanced Quiz add-on.

  • First, Install and activate the “LearnDash” plugin.
  • Next, from the WordPress Dashboard, navigate to plugins and select Add New.
  • Click on Upload Plugin and select the Learndash Advanced Quiz Add-on file.
  • Once the installation is complete, click on the Activate button to activate the plugin.
  • A new option Advanced Quiz will appear, under the LearnDash LMS menu on the WordPress Dashboard.
  • Next, select the Advanced Quiz to configure the Learndash Advanced Quiz Settings.

LearnDash Advanced Quiz Settings:

General Settings:

To set up the plugin’s settings according to your needs go to LearnDash from your WordPress Dashboard and select Advanced Quiz  You’ll be able to configure all settings using the menu under the General Setting tab.

Note: The plugin also supports multi-languages 


Go to LearnDash > Advanced Quiz and select the License tab. Here you can insert the license key in the field to get automatic updates for the add-on.

Negative Markings For Quiz Questions:

To use the negative marking feature of this add-on, you must check the option of Allow Negative Marking from the Advanced Quiz Add-on’s General Settings. You can find this section by selecting Advanced Quiz under LearnDash from the WordPress dashboard and then selecting the General Settings tab, as explained above. Once you check the box, make sure to update the settings so that changes can be saved.  You can set the negative marking for each question on the question edit page from the meta box on the right.

Time limit For Each Question:

To enable time limits for your quiz questions, you must check the option of Different time limits for each question from the Advanced Quiz General Settings menu. You can find this section by selecting LearnDash from the WordPress dashboard and then selecting Advanced Quiz. Finally, click on the Update Settings button to save your changes.

You can set the time limit for each question on the question edit page from the meta box on the right.

Save/Resume Quiz:

Navigate to LearnDash from the WordPress dashboard and select Advanced settings. Next, check the box next to  Allow Save/Resume Quiz in the General Settings tab. Finally, select Update Settings to save changes and enable the feature. 

When this feature is enabled, your answers will be saved after saving a quiz, and you will be able to resume the evaluation with the answers you saved previously on your next visit to that quiz.

Upon resuming the quiz, you will be taken to the same question from where you left off. Your quiz state will be saved and if you have answered any previous question that answer will also be saved there too, for the ease of the students/users to get back to it whenever they feel like resuming their attempt.

Resume limit:

If you want to limit the number of times your students can resume work on a quiz, you can also set a ”resume quiz limit”  from the meta box on the right side on the quiz edit page.

Next Button as Save Button:

To make your quizzes next button act as a save button at the same time, check the option of Next Button as Save Button? On the general setting section from the Advanced Quiz menu. You can find this section by selecting Advanced Quiz, under LearnDash, from the WordPress dashboard.

When enabled, the Next button will be labelled as “Save & Next”.When users click on this button, their questions will be saved, and they will be shown the next question.

Disable Question Time Limit (Shared Quiz Questions):

If you are using all questions across multiple quizzes by enabling the option “Shared Quiz Questions”, the LearnDash Advanced Quizzes add-on allows you to disable question time limit for any specific quiz. To do so, follow these steps:

  • You’ll first need to enable the Shared Quiz Questions option. This is done by navigating to LearnDash from the dashboard, selecting quizzes, and then settings. Here, enable the Quiz Builder and then enable Shared Quiz Questions.
  • Navigate to the LearnDash > Quizzes and then select the desired quiz edit page.
  • Scroll down to the Advanced Quiz meta-box at the right sidebar.
  • Check the option Disable Question Time Limit.
  • Update/publish the quiz.

New Question Types:

Three new Learndash quiz question types have been added in the Learndash Advanced Quiz add-on. All of them are as follows:

Jumbled Sentence:

Jumbled Sentence questions require students to complete a sentence by selecting words or phrases from a drop-down list.

From Backend:

Do not Award Points for Each Usage:

If you don’t want to award points when a specific variable is used, check the “do not award points for each usage” option. As a result, the system will not award points for each usage of that specific variable.

From the Frontend:

Swipe Question:

This new question type allows you to add different text or image answer options to a question. The user can then swipe right if the answer is correct or swipe left if the answer isn’t valid.

From Backend:  From Frontend:

Note: You can also restart the swiping question after resuming the quiz by merely clicking on the restart button that shows on the swipe question on the frontend.

Calculation Formula:

This will allow the admin/instructor to add variables in the questions, and set a limit for the variables. This question type is very suitable for Maths problems.

Example Question:

If a small soda glass contains [x] ounces of soda, and a large soda glass contains [y] ounces of soda, what is the total number of ounces in 4 large and three small glasses of soda? Now if admin select range 1 - 5 for the variables, the random numbers will be displayed on frontend against the variable from that range.

From Backend:

From Frontend:

Maths Functions in Calculated Formula:

Square root, cos, sin, tan, abs, exp, log, round, ceil, floor, fmod functions, and all the mentioned functions below are supported in the calculated formula question type.

Functions Format:

Use the following format to use functions in the calculated formula question type.

function(   [a]  )

Here “a” is the variable that contains a value.

  • cos( [a] )
  • sin( [a] )
  • tan( [a] )
  • abs( [a] )
  • exp( [a] )
  • log( [a] )
  • sqrt( [a] )
  • int( [a] )
  • round( [a] )
  • ceil( [a] )
  • floor( [a] )
  • fmod( [a] )
  • acos( [a] )
  • acosh( [a] )
  • asin( [a] )
  • asinh( [a] )
  • atan2( [a] )
  • atan( [a] )
  • atanh( [a] )
  • bindec( [a] )
  • cosh( [a] )
  • decbin( [a] )
  • dechex( [a] )
  • decoct( [a] )
  • deg2rad( [a] )
  • hexdec( [a] )
  • log10( [a] )
  • max( [a] )
  • min( [a] )
  • octdec( [a] )
  • pi( [a] )
  • rad2deg( [a] )
  • rand( [a] )
  • sinh( [a] )
  • rand( [a] )
  • srand( [a] )
  • tanh( [a] )

Decimal Points in Calculated Formula:

You can also set the decimal points so that the answer will be calculated according to the specified decimal points.

A meta box will be shown on the right side of the calculated formula question type.

From Backend:

From Frontend:

Developer’s Doc:

Action and Filter Hooks:


Purpose: Modifies the “Save” button text.


  • $button_text (string)
  • $quiz_post_id (integer)


Purpose: Modifies the “Resume” button text.


  • $button_text (string)
  • $quiz_post_id (integer)


Purpose: Modifies the “Next” button text.


  • $button_text (string)
  • $quiz_post_id (integer)
  • $is_save_and_resume_enabled (boolean)