Advanced WooCommerce invoice plugin: create customizable HTML/PDF invoices, attach to emails, and let customers download styled invoices easily.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Security
359
6 issue groups
Maintainability
121
15 issue groups
I18n
112
4 issue groups
ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$echo</div></div>"'.206
- Category
- Security
- Occurrences
- 206
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$echo</div></div>"'.
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.81
- Category
- I18n
- Occurrences
- 81
- 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.
WARNINGSecurityMissing Unslash$_GET["download"] not unslashed before sanitization. Use wp_unslash() or similar57
- Category
- Security
- Occurrences
- 57
- Severity
- warning
Sample message
$_GET["download"] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGSecurityRecommendedProcessing form data without nonce verification.49
- Category
- Security
- Occurrences
- 49
- Severity
- warning
Sample message
Processing form data without nonce verification.
WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET["inventory-bulk"]29
- Category
- Security
- Occurrences
- 29
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET["inventory-bulk"]
ERRORMaintainabilityEcho FoundShort PHP opening tag used with echo; expected "<?php echo $key ..." but found "<?= $key ..."20
- Category
- Maintainability
- Occurrences
- 20
- Severity
- error
Sample message
Short PHP opening tag used with echo; expected "<?php echo $key ..." but found "<?= $key ..."
WARNINGMaintainabilityMissing VersionResource 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.20
- Category
- Maintainability
- Occurrences
- 20
- 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.
WARNINGMaintainabilityNot In FooterIn 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.19
- Category
- Maintainability
- Occurrences
- 19
- 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.
ERRORI18nUnordered Placeholders TextMultiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s", but got "%s, %s" in '%sBack to Dashboard%s'.17
- Category
- I18n
- Occurrences
- 17
- Severity
- error
Sample message
Multiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s", but got "%s, %s" in '%sBack to Dashboard%s'.
WARNINGMaintainabilityNon Prefixed Hookname FoundHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'woocommerce_get_sections_' . $this->id".13
- Category
- Maintainability
- Occurrences
- 13
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'woocommerce_get_sections_' . $this->id".
Show 15 moreShow less
WARNINGSecurityMissing12
- Category
- Security
- Occurrences
- 12
- Severity
- warning
Sample message
Processing form data without nonce verification.
ERRORI18nNon Singular String Literal Domain10
- Category
- I18n
- Occurrences
- 10
- Severity
- error
Sample message
The $domain parameter must be a single text string literal. Found: $PeproUltimateInvoice->td
WARNINGMaintainabilityNon Prefixed Function Found9
- Category
- Maintainability
- Occurrences
- 9
- Severity
- warning
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "pu_gregorian_to_jalali".
ERRORMaintainabilityunlink unlink8
- Category
- Maintainability
- Occurrences
- 8
- Severity
- error
Sample message
unlink() is discouraged. Use wp_delete_file() to delete a file.
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.
WARNINGSecurityInput Not Validated6
- Category
- Security
- Occurrences
- 6
- Severity
- warning
Sample message
Detected usage of a possibly undefined superglobal array index: $_POST['lparam']. Check that the array index exists before using it.
WARNINGMaintainabilityDiscouraged5
- Category
- Maintainability
- Occurrences
- 5
- Severity
- warning
Sample message
The use of function ini_set() is discouraged
WARNINGMaintainabilityNon Prefixed Constant Found4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "PEPROULTIMATEINVOICE_ASSETS_URL".
WARNINGMaintainabilityNon Prefixed Variable Found4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$PeproUltimateInvoice".
ERRORMaintainabilitystrip tags strip tags4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- error
Sample message
strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.
ERRORI18nInterpolated Variable Domain4
- Category
- I18n
- Occurrences
- 4
- Severity
- error
Sample message
The $domain parameter must not contain interpolated variables or expressions. Found: $this->td
ERRORMaintainabilitytimezone change date default timezone set3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- error
Sample message
Using date_default_timezone_set() and similar isn't allowed, instead use WP internal timezone support.
WARNINGMaintainabilityprevent path disclosure error reporting2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
error_reporting() can lead to full path disclosure.
ERRORMaintainabilitycurl curl setopt2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
Using cURL functions is highly discouraged. Use wp_remote_get() instead.
ERRORMaintainabilityfile system operations mkdir2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: mkdir().
Score History
First score snapshot
v2.2.6
24
Latest
- Findings
- 613
- Errors
- 379
- Warnings
- 234
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 24 | 613 | 379 | 234 | v2.2.6 | 2.0.0 |