Modular DS: Monitor, update, and backup multiple websites

Manage all your WordPress sites from one place. Automate updates, backups, uptime monitoring, security, maintenance reports, and more.

v3.0.1Modular DSUpdated 2026-05-22Added Feb 17, 202340k+ installs100% rating0% support resolved
21
Score
161
Errors
81
Warnings
+0
Change

Category Scores

Security0
Repo71
Performance100
Maintainability0

Top Issues by Category

maintainability138
1missing direct file access protectionmissing_direct_file_access_protectionERROR192No Code FoundInternal.NoCodeFoundWARNING153file system operations fopenWordPress.WP.AlternativeFunctions.file_system_operations_fopenERROR144Non Prefixed Variable FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFoundWARNING135file system operations fcloseWordPress.WP.AlternativeFunctions.file_system_operations_fcloseERROR136parse url parse urlWordPress.WP.AlternativeFunctions.parse_url_parse_urlERROR127error log error logWordPress.PHP.DevelopmentFunctions.error_log_error_logWARNING108Non Prefixed Hookname FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFoundWARNING59file system operations fwriteWordPress.WP.AlternativeFunctions.file_system_operations_fwriteERROR510Direct QueryWordPress.DB.DirectDatabaseQuery.DirectQueryWARNING411No CachingWordPress.DB.DirectDatabaseQuery.NoCachingWARNING412mysql PDOWordPress.DB.RestrictedClasses.mysql__PDOERROR413Dynamic Hookname FoundWordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFoundWARNING414file system operations rmdirWordPress.WP.AlternativeFunctions.file_system_operations_rmdirERROR315unlink unlinkWordPress.WP.AlternativeFunctions.unlink_unlinkERROR316Not AllowedPluginCheck.CodeAnalysis.Heredoc.NotAllowedERROR217DiscouragedSquiz.PHP.DiscouragedFunctions.DiscouragedWARNING218slow db query meta keyWordPress.DB.SlowDBQuery.slow_db_query_meta_keyWARNING219slow db query meta valueWordPress.DB.SlowDBQuery.slow_db_query_meta_valueWARNING220file system operations is writableWordPress.WP.AlternativeFunctions.file_system_operations_is_writableERROR2
security78
supply_chain7

Issues Details

242 issues found in latest scan

ERROR50
WordPress.Security.EscapeOutput.ExceptionNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Backup directory was not created properly: {$destDirectory}"'.

ERROR19
missing_direct_file_access_protection

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

WARNING15
Internal.NoCodeFound

No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be using short open tags but PHP does not allow them.

ERROR14
WordPress.WP.AlternativeFunctions.file_system_operations_fopen

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fopen().

WARNING13
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

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

ERROR13
WordPress.WP.AlternativeFunctions.file_system_operations_fclose

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().

ERROR12
WordPress.Security.EscapeOutput.OutputNotEscaped

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

ERROR12
WordPress.WP.AlternativeFunctions.parse_url_parse_url

parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.

WARNING10
WordPress.PHP.DevelopmentFunctions.error_log_error_log

error_log() found. Debug code should not normally be used in production.

WARNING8
WordPress.Security.ValidatedSanitizedInput.InputNotSanitized

Detected usage of a non-sanitized input variable: $_SERVER['HTTP_CF_IPCOUNTRY']

WARNING8
WordPress.Security.ValidatedSanitizedInput.MissingUnslash

$_SERVER['HTTP_CF_IPCOUNTRY'] not unslashed before sanitization. Use wp_unslash() or similar

ERROR7
hidden_files

Hidden files are not permitted.

WARNING5
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "pre_set_site_transient_update_{$type}s".

ERROR5
WordPress.WP.AlternativeFunctions.file_system_operations_fwrite

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fwrite().

WARNING4
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING4
WordPress.DB.DirectDatabaseQuery.NoCaching

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

ERROR4
WordPress.DB.RestrictedClasses.mysql__PDO

Accessing the database directly should be avoided. Please use the $wpdb object and associated functions instead. Found: \PDO.

WARNING4
WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

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

ERROR3
WordPress.WP.AlternativeFunctions.file_system_operations_rmdir

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: rmdir().

ERROR3
WordPress.WP.AlternativeFunctions.unlink_unlink

unlink() is discouraged. Use wp_delete_file() to delete a file.

ERROR2
PluginCheck.CodeAnalysis.Heredoc.NotAllowed

Use of heredoc syntax (<<<) is not allowed; use standard strings or inline HTML instead

WARNING2
Squiz.PHP.DiscouragedFunctions.Discouraged

The use of function ini_set() is discouraged

WARNING2
WordPress.DB.SlowDBQuery.slow_db_query_meta_key

Detected usage of meta_key, possible slow query.

WARNING2
WordPress.DB.SlowDBQuery.slow_db_query_meta_value

Detected usage of meta_value, possible slow query.

ERROR2
WordPress.WP.AlternativeFunctions.file_system_operations_is_writable

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().

Latest Snapshot

Findings

242

Errors

161

Warnings

81

Score History

First score snapshot

First scan completed Jun 20, 2026

v3.0.1 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

Jun 20, 2026

v3.0.1

21

Latest

Findings
242
Errors
161
Warnings
81
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins