Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF

Unlimited automatic image optimization for WordPress. Compress images, convert to WebP, and improve site speed without losing image quality.

v2.0.5ThemeisleUpdated Added 100k+ installs88% rating
20
Score
557
Errors
541
Warnings
+0
Change

Category Scores

Security0
Repo66
Performance100
Maintainability0

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

1,098 findings

Security

653

12 issue groups

Maintainability

375

13 issue groups

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<li class='directory collapsed'>{$checkbox}<a rel=' "'.211
Category
Security
Occurrences
211
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<li class='directory collapsed'>{$checkbox}<a rel=' "'.

ERRORSecurityUnsafe Printing FunctionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.127
Category
Security
Occurrences
127
Severity
error

Sample message

All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.89
Category
Maintainability
Occurrences
89
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().85
Category
Maintainability
Occurrences
85
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: &quot;$avif_enabled&quot;.76
Category
Maintainability
Occurrences
76
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: &quot;$avif_enabled&quot;.

WARNINGSecurityInterpolated Not PreparedUse placeholders and $wpdb-&gt;prepare(); found interpolated variable $clause at &quot;DELETE FROM {$wpdb-&gt;postmeta} WHERE post_id=&#039;%d&#039; AND meta_key IN ($clause)&quot;55
Category
Security
Occurrences
55
Severity
warning

Sample message

Use placeholders and $wpdb-&gt;prepare(); found interpolated variable $clause at &quot;DELETE FROM {$wpdb-&gt;postmeta} WHERE post_id=&#039;%d&#039; AND meta_key IN ($clause)&quot;

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

Sample message

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

ERRORSecurityException Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Class {$class_name} is not found!"'.52
Category
Security
Occurrences
52
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Class {$class_name} is not found!"'.

WARNINGSecurityMissing Unslash$_GET[&#039;_wpnonce&#039;] not unslashed before sanitization. Use wp_unslash() or similar33
Category
Security
Occurrences
33
Severity
warning

Sample message

$_GET[&#039;_wpnonce&#039;] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET[&#039;_wpnonce&#039;]30
Category
Security
Occurrences
30
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_GET[&#039;_wpnonce&#039;]

Show 15 more
ERRORSecurityUnescaped DBParameter28
Category
Security
Occurrences
28
Severity
error

Sample message

Unescaped parameter $clause used in $wpdb->query()\n$clause assigned unsafely at line 135.

WARNINGMaintainabilityNon Prefixed Class Found26
Category
Maintainability
Occurrences
26
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: &quot;RIOP_WebP_Extra_Data&quot;.

WARNINGSecurityRecommended24
Category
Security
Occurrences
24
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGMaintainabilityNon Prefixed Hookname Found18
Category
Maintainability
Occurrences
18
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: &quot;&#039;themeisle_sdk_license_process_&#039; . $namespace&quot;.

WARNINGSecurityMissing18
Category
Security
Occurrences
18
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGMaintainabilityDynamic Hookname Found16
Category
Maintainability
Occurrences
16
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: &quot;$tag&quot;.

WARNINGMaintainabilityNot In Footer13
Category
Maintainability
Occurrences
13
Severity
warning

Sample message

In footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.

WARNINGSecurityInput Not Validated12
Category
Security
Occurrences
12
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_POST[&#039;id&#039;]. Check that the array index exists before using it.

ERRORMaintainabilitycurl curl setopt12
Category
Maintainability
Occurrences
12
Severity
error

Sample message

Using cURL functions is highly discouraged. Use wp_remote_get() instead.

ERRORMaintainabilityunlink unlink12
Category
Maintainability
Occurrences
12
Severity
error

Sample message

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

ERRORMaintainabilitymissing direct file access protection9
Category
Maintainability
Occurrences
9
Severity
error

Sample message

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

WARNINGSecurityUnescaped DBParameter8
Category
Security
Occurrences
8
Severity
warning

Sample message

Unescaped parameter $io_db_table used in $wpdb-&gt;query()\n$io_db_table assigned unsafely at line 21.

WARNINGMaintainabilityNon Prefixed Function Found7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: &quot;_sanitize_text_fields&quot;.

ERRORMaintainabilitydate date6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

WARNINGMaintainabilityMissing Version6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.

Score History

First score snapshot

v2.0.5

20

Latest

Findings
1,098
Errors
557
Warnings
541
Check
2.0.0

Related Plugins