Easy Photo Album

Easy Photo Album makes it easy for you to create and manage photo albums.

v1.3.7TV productionsUpdated Added 1k+ installs94% rating
37
Score
360
Errors
43
Warnings
+0
Change

Category Scores

Security0
Repo89
Performance100
Maintainability70

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

403 findings

I18n

227

6 issue groups

Security

157

9 issue groups

Maintainability

17

6 issue groups

Repo Compliance

2

2 issue groups

ERRORI18nText Domain MismatchMismatched text domain. Expected 'easy-photo-album' but got 'epa'.179
Category
I18n
Occurrences
179
Severity
error

Sample message

Mismatched text domain. Expected 'easy-photo-album' but got 'epa'.

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<option value='{$size}' {$selected}>{$displayname}</option>"'.66
Category
Security
Occurrences
66
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<option value='{$size}' {$selected}>{$displayname}</option>"'.

ERRORSecurityUnsafe printing functionAll output should be run through an escaping function (like echo esc_html_x() or echo esc_attr_x()), found '_ex'.46
Category
Security
Occurrences
46
Severity
error

Sample message

All output should be run through an escaping function (like echo esc_html_x() or echo esc_attr_x()), found '_ex'.

ERRORI18nMissing Arg DomainMissing $domain parameter in function call to __().22
Category
I18n
Occurrences
22
Severity
error

Sample message

Missing $domain parameter in function call to __().

ERRORI18nMissing Translators CommentA 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.22
Category
I18n
Occurrences
22
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.

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

Sample message

Processing form data without nonce verification.

ERRORMaintainabilityNot AllowedUse of heredoc syntax (<<<) is not allowed; use standard strings or inline HTML instead8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

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

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_POST[self::INPUT_NAME][&#039;albumdata&#039;]8
Category
Security
Occurrences
8
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_POST[self::INPUT_NAME][&#039;albumdata&#039;]

WARNINGSecurityRequest data is not unslashed$_POST[self::INPUT_NAME][&#039;albumdata&#039;] not unslashed before sanitization. Use wp_unslash() or similar8
Category
Security
Occurrences
8
Severity
warning

Sample message

$_POST[self::INPUT_NAME][&#039;albumdata&#039;] not unslashed before sanitization. Use wp_unslash() or similar

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

Sample message

Processing form data without nonce verification.

Show 13 more
ERRORSecurityHeredoc Output Not Escaped4
Category
Security
Occurrences
4
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found interpolation in unescaped heredoc.

ERRORMaintainabilityMissing direct file access protection3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

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

ERRORMaintainabilityPlugin Directory Write2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Plugin folders are deleted when upgraded. Do not save data to the plugin folder using file_put_contents(). Detected usage of __FILE__ or __DIR__ magic constant. Use wp_upload_dir() to get the uploads directory path or save to the database instead.

WARNINGMaintainabilityerror log print r2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

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

ERRORSecurityException output is not escaped2
Category
Security
Occurrences
2
Severity
error

Sample message

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

ERRORI18nNon Singular String Literal Domain2
Category
I18n
Occurrences
2
Severity
error

Sample message

The $domain parameter must be a single text string literal. Found: $domain

ERRORMaintainabilitydate date1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

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

WARNINGSecurityInput is not validated1
Category
Security
Occurrences
1
Severity
warning

Sample message

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

WARNINGMaintainabilityDeprecated function: screen_icon1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

screen_icon() has been deprecated since WordPress version 3.8.0.

ERRORI18nMissing Singular Placeholder1
Category
I18n
Occurrences
1
Severity
error

Sample message

Missing singular placeholder, needed for some languages. See https://codex.wordpress.org/I18n_for_WordPress_Developers#Plurals

ERRORRepo Complianceoutdated tested upto header1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Tested up to: 4.5 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.

ERRORRepo Complianceplugin header no license1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Missing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.

WARNINGI18ntextdomain mismatch1
Category
I18n
Occurrences
1
Severity
warning

Sample message

The "Text Domain" header in the plugin file does not match the slug. Found "epa", expected "easy-photo-album".

External Connections

Potential connections found in static code analysis.

12 domains

Outbound calls

22

External assets

0

Incoming endpoints

1

Notable Domains

tv-productions.org3 · outbound
lokeshdhakar.com2 · outbound
php.net2 · outbound
creativecommons.org1 · outbound
paypal.com1 · outbound
paypalobjects.com1 · outbound

Platform / Reference Domains

wordpress.org4 · platform/reference
gnu.org3 · platform/reference
codex.wordpress.org2 · platform/reference
plugins.trac.wordpress.org1 · platform/reference
profiles.wordpress.org1 · platform/reference

External Asset Domains

No external asset domains detected.

Incoming Endpoints

No public endpoints detected.

Admin AJAX endpoints1
wp_ajax_epa_get_albumsauthenticated

wp_ajax

Score History

First score snapshot

v1.3.7

37

Latest

Findings
403
Errors
360
Warnings
43
Check
2.0.0

Relationship Map

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

36 nodes

Related Plugins

Album Gallery for Flickr

4k+ active installs

100
Disable Lazy Load

10k+ active installs

100
Image Placeholders

60k+ active installs

100
100