Ultimate Watermark – Image Watermark, Image Protection & Bulk Watermarking

Bulk watermark WordPress images. Add a copyright text or logo watermark to media, photos and WooCommerce products. Backup originals & restore anytime.

v2.1.4MantraBrainUpdated Added 1k+ installs66% rating100% support resolved
27
Score
164
Errors
303
Warnings
+0
Change

Category Scores

Security0
Repo94
Performance100
Maintainability15

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

467 findings

Security

255

11 issue groups

Maintainability

171

12 issue groups

I18n

20

2 issue groups

WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.54
Category
Security
Occurrences
54
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGMaintainabilityerror log error logerror_log() found. Debug code should not normally be used in production.50
Category
Maintainability
Occurrences
50
Severity
warning

Sample message

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

WARNINGSecurityRequest data is not unslashed$_GET['tab'] not unslashed before sanitization. Use wp_unslash() or similar42
Category
Security
Occurrences
42
Severity
warning

Sample message

$_GET['tab'] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityMissing nonce verificationProcessing form data without nonce verification.37
Category
Security
Occurrences
37
Severity
warning

Sample message

Processing form data without nonce verification.

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$actions'.36
Category
Security
Occurrences
36
Severity
error

Sample message

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

ERRORSecurityException output is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Invalid value for {$field_name}. Must be between {$min} and {$max}."'.32
Category
Security
Occurrences
32
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Invalid value for {$field_name}. Must be between {$min} and {$max}."'.

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_POST['attachment_ids']30
Category
Security
Occurrences
30
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_POST['attachment_ids']

ERRORMaintainabilitydate datedate() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.28
Category
Maintainability
Occurrences
28
Severity
error

Sample message

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

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.24
Category
Maintainability
Occurrences
24
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().23
Category
Maintainability
Occurrences
23
Severity
warning

Sample message

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

Show 15 more
ERRORI18nMissing Translators Comment17
Category
I18n
Occurrences
17
Severity
error

Sample message

A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.

WARNINGMaintainabilityslow db query meta query9
Category
Maintainability
Occurrences
9
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

ERRORMaintainabilityunlink unlink9
Category
Maintainability
Occurrences
9
Severity
error

Sample message

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

ERRORMaintainabilityfile system operations is writable8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

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

WARNINGSecurityInterpolated SQL is not prepared6
Category
Security
Occurrences
6
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $placeholders at WHERE post_id IN ($placeholders)\n

ERRORSecurityDatabase parameter is not escaped5
Category
Security
Occurrences
5
Severity
error

Sample message

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

ERRORSecurityLike Wildcards In Query5
Category
Security
Occurrences
5
Severity
error

Sample message

SQL wildcards for a LIKE query should be passed in through a replacement parameter. Found: LIKE 'image/%'.

WARNINGSecurityUnfinished Prepare5
Category
Security
Occurrences
5
Severity
warning

Sample message

Replacement variables found, but no valid placeholders found in the query.

WARNINGMaintainabilityNon-prefixed hook name5
Category
Maintainability
Occurrences
5
Severity
warning

Sample message

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

WARNINGMaintainabilityDiscouraged PHP function4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

The use of function ini_set() is discouraged

WARNINGMaintainabilityslow db query meta key4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

Detected usage of meta_key, possible slow query.

ERRORMaintainabilityparse url parse url4
Category
Maintainability
Occurrences
4
Severity
error

Sample message

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

ERRORSecuritySQL query is not prepared3
Category
Security
Occurrences
3
Severity
error

Sample message

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

ERRORMaintainabilityfile system operations rmdir3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

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

ERRORI18nUnordered Placeholders Text3
Category
I18n
Occurrences
3
Severity
error

Sample message

Multiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d", but got "%d, %d" in 'Backup files migrated: %d successful, %d failed.'.

External Connections

Potential connections found in static code analysis.

10 domains

Outbound calls

25

External assets

0

Incoming endpoints

25

Notable Domains

mantrabrain.com10 · outbound
php-fig.org2 · outbound
cdn.jsdelivr.net1 · outbound
getcomposer.org1 · outbound

Platform / Reference Domains

w3.org5 · platform/reference
github.com2 · platform/reference
gnu.org1 · platform/reference
wordpress.org1 · platform/reference

External Asset Domains

No external asset domains detected.

Incoming Endpoints

No public endpoints detected.

Admin AJAX endpoints24
wp_ajax_{$action}authenticated

wp_ajax

admin_post_ultimate_watermark_save_settingsauthenticated

admin_post

wp_ajax_ultimate_watermark_apply_automaticauthenticated

wp_ajax

wp_ajax_ultimate_watermark_apply_manualauthenticated

wp_ajax

wp_ajax_ultimate_watermark_bulk_activateauthenticated

wp_ajax

wp_ajax_ultimate_watermark_bulk_deactivateauthenticated

wp_ajax

wp_ajax_ultimate_watermark_bulk_deleteauthenticated

wp_ajax

wp_ajax_ultimate_watermark_bulk_delete_backupauthenticated

wp_ajax

wp_ajax_ultimate_watermark_bulk_restore_backupauthenticated

wp_ajax

wp_ajax_ultimate_watermark_deleteauthenticated

wp_ajax

wp_ajax_ultimate_watermark_delete_backupauthenticated

wp_ajax

wp_ajax_ultimate_watermark_duplicateauthenticated

wp_ajax

12 more hidden

Score History

First score snapshot

v2.1.4

27

Latest

Findings
467
Errors
164
Warnings
303
Check
2.0.0

Relationship Map

Author, categories, issues, domains, and nearby plugins.

35 nodes

Related Plugins

Disable Lazy Load

10k+ active installs

100
Image Placeholders

60k+ active installs

100
Modern Image Formats

100k+ active installs

100
Simple Block Gallery

1k+ active installs

100
Attachment Pages Redirect

20k+ active installs

99