Portfolio plugin for WordPress. Create filterable portfolio grids with masonry layouts and lightbox. Ideal for photographers, designers, agencies.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Security
68
8 issue groups
Maintainability
52
13 issue groups
I18n
10
4 issue groups
WARNINGMaintainabilityNon Prefixed Variable FoundGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$atts".26
- Category
- Maintainability
- Occurrences
- 26
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$atts".
ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$block_portfolio_render'.17
- Category
- Security
- Occurrences
- 17
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$block_portfolio_render'.
WARNINGSecurityRecommendedProcessing form data without nonce verification.16
- Category
- Security
- Occurrences
- 16
- Severity
- warning
Sample message
Processing form data without nonce verification.
WARNINGSecurityMissingProcessing form data without nonce verification.13
- Category
- Security
- Occurrences
- 13
- Severity
- warning
Sample message
Processing form data without nonce verification.
ERRORSecurityUnsafe Printing FunctionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.8
- Category
- Security
- Occurrences
- 8
- Severity
- error
Sample message
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
WARNINGSecurityMissing Unslash$_GET['page'] not unslashed before sanitization. Use wp_unslash() or similar7
- Category
- Security
- Occurrences
- 7
- Severity
- warning
Sample message
$_GET['page'] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGMaintainabilityNon Prefixed Hookname FoundHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'wpz-portfolio_select_' . $option_id".6
- Category
- Maintainability
- Occurrences
- 6
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'wpz-portfolio_select_' . $option_id".
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.6
- Category
- I18n
- Occurrences
- 6
- 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.
WARNINGMaintainabilityNon Prefixed Function FoundFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "load_reorder_portfolio_items".3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "load_reorder_portfolio_items".
WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET['post']3
- Category
- Security
- Occurrences
- 3
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET['post']
Show 15 moreShow less
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;
WARNINGMaintainabilitytrademarked term3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
The plugin name includes a restricted term. Your chosen plugin name - "WPZOOM Portfolio Lite - Filterable Portfolio Plugin" - contains the restricted term "plugin" which cannot be used at all in your plugin name.
ERRORSecurityUnescaped DBParameter2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
Unescaped parameter $sql used in $wpdb->get_var()\n$sql assigned unsafely at line 536.
WARNINGMaintainabilityDirect Query2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Use of a direct database call is discouraged.
WARNINGMaintainabilityNo Caching2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
ERRORSecurityNot Prepared2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $sql
WARNINGMaintainabilityNot In Footer2
- Category
- Maintainability
- Occurrences
- 2
- 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.
WARNINGI18nNo Html Wrapped Strings2
- Category
- I18n
- Occurrences
- 2
- Severity
- warning
Sample message
Translatable string should not be wrapped in HTML. Found: '<p>You can change the number of the posts in <a href="%s">Theme Options</a>.</p>'
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.
ERRORMaintainabilityOffloaded Content1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
Offloading images, js, css, and other scripts to your servers or any remote service is disallowed.
WARNINGMaintainabilityslow db query meta query1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Detected usage of meta_query, possible slow query.
WARNINGMaintainabilityslow db query tax query1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Detected usage of tax_query, possible slow query.
WARNINGMaintainabilityNon Prefixed Class Found1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "WPTT_WebFont_Loader".
ERRORMaintainabilityAdd option Param3Found1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
The parameter "$deprecated" at position #3 of add_option() has been deprecated since WordPress version 2.3.0. Use "" instead.
ERRORI18nUnordered Placeholders Text1
- Category
- I18n
- Occurrences
- 1
- Severity
- error
Sample message
Multiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s, %3$s", but got "%s, %s, %s" in '<strong>WPZOOM Portfolio</strong> is not compatible with the <strong>Classic Editor</strong>. <br/>Please disable the <strong>Classic Editor</strong> or go to <a href="%s" target="_blank">Settings → Writing</a> and change the default editor to Block editor. <br/>For more information, please check this tutorial: <a href="%s" target="_blank">How to Create a Portfolio Section</a></p><p><a href="%s" class="button" target="_blank">Go to Settings → Writing</a>'.
Score History
First score snapshot
v1.4.28
35
Latest
- Findings
- 134
- Errors
- 42
- Warnings
- 92
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 35 | 134 | 42 | 92 | v1.4.28 | 2.0.0 |