Quiz and Survey Master (QSM) – Easy Quiz and Survey Maker

Create quizzes, surveys, and tests easily on WordPress with this versatile plugin. Perfect for engaging any audience and gathering valuable insights!

v11.1.5ExpressTech SystemsUpdated Added 40k+ installs94% rating75% support resolved
24
Score
406
Errors
2,581
Warnings
+0
Change

Category Scores

Security0
Repo94
Performance100
Maintainability0

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

2,987 findings

Maintainability

2,160

14 issue groups

Security

817

10 issue groups

I18n

1

1 issue group

WARNINGMaintainabilityNon Prefixed Hookname FoundHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'qsm_theme_option_' . strtolower( $theme['theme_name'] )".581
Category
Maintainability
Occurrences
581
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'qsm_theme_option_' . strtolower( $theme['theme_name'] )".

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.388
Category
Maintainability
Occurrences
388
Severity
warning

Sample message

Use of a direct database call is discouraged.

WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().375
Category
Maintainability
Occurrences
375
Severity
warning

Sample message

Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().

WARNINGMaintainabilityNon Prefixed Variable FoundGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$QSMQuizList".339
Category
Maintainability
Occurrences
339
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$QSMQuizList".

WARNINGMaintainabilityNon Prefixed Function FoundFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "get_question_type".325
Category
Maintainability
Occurrences
325
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "get_question_type".

ERRORSecurityNot PreparedUse placeholders and $wpdb->prepare(); found $audit_table168
Category
Security
Occurrences
168
Severity
error

Sample message

Use placeholders and $wpdb->prepare(); found $audit_table

WARNINGSecurityRecommendedProcessing form data without nonce verification.120
Category
Security
Occurrences
120
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityMissingProcessing form data without nonce verification.112
Category
Security
Occurrences
112
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityInterpolated Not PreparedUse placeholders and $wpdb->prepare(); found interpolated variable $audit_table_name at "SHOW TABLES LIKE '$audit_table_name'"107
Category
Security
Occurrences
107
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $audit_table_name at "SHOW TABLES LIKE '$audit_table_name'"

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$object_class_qsm_render_pagination'.105
Category
Security
Occurrences
105
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$object_class_qsm_render_pagination'.

Show 15 more
ERRORSecurityUnescaped DBParameter96
Category
Security
Occurrences
96
Severity
error

Sample message

Unescaped parameter $audit_table used in $wpdb->get_var()\n$audit_table assigned unsafely at line 2108.

WARNINGSecurityUnescaped DBParameter81
Category
Security
Occurrences
81
Severity
warning

Sample message

Unescaped parameter $audit_table_name used in $wpdb->get_var()\n$audit_table_name assigned unsafely at line 1461.

WARNINGMaintainabilitySchema Change53
Category
Maintainability
Occurrences
53
Severity
warning

Sample message

Attempting a database schema change is discouraged.

WARNINGMaintainabilityNon Prefixed Class Found44
Category
Maintainability
Occurrences
44
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "AcceptanceTester".

WARNINGSecurityUnquoted Complex Placeholder18
Category
Security
Occurrences
18
Severity
warning

Sample message

Complex placeholders used for values in the query string in $wpdb->prepare() will NOT be quoted automagically. Found: %1s.

ERRORMaintainabilitymissing direct file access protection17
Category
Maintainability
Occurrences
17
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

WARNINGMaintainabilityNon Prefixed Constant Found11
Category
Maintainability
Occurrences
11
Severity
warning

Sample message

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "QSM_PLUGIN_BASENAME".

ERRORSecurityQuoted Simple Placeholder7
Category
Security
Occurrences
7
Severity
error

Sample message

Simple placeholders should not be quoted in the query string in $wpdb->prepare(). Found: '%d'.

WARNINGMaintainabilityDynamic Hookname Found7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$filter".

ERRORMaintainabilitywp function not compatible with requires wp6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

Function "register_block_type()" requires WordPress 5.0.0, but your plugin minimum supported version is WordPress 4.9.0.

WARNINGMaintainabilityslow db query meta key5
Category
Maintainability
Occurrences
5
Severity
warning

Sample message

Detected usage of meta_key, possible slow query.

WARNINGMaintainabilityslow db query meta query5
Category
Maintainability
Occurrences
5
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

WARNINGMaintainabilityslow db query meta value4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

Detected usage of meta_value, possible slow query.

ERRORSecurityregister setting Missing3
Category
Security
Occurrences
3
Severity
error

Sample message

Sanitization missing for register_setting().

WARNINGI18nload plugin textdomain Found1
Category
I18n
Occurrences
1
Severity
warning

Sample message

load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.

Score History

First score snapshot

v11.1.5

24

Latest

Findings
2,987
Errors
406
Warnings
2,581
Check
2.0.0

Related Plugins