Falang multilanguage for WordPress

Falang is a WordPress multilingual plugin. Translate sites and WooCommerce content. Supports Google, Azure, DeepL and ChatGPT

v1.4.4sboueyUpdated Added 1k+ installs100% rating33% support resolved
22
Score
716
Errors
769
Warnings
+0
Change

Category Scores

Security0
Repo83
Performance91
Maintainability0

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

1,485 findings

Security

1,113

11 issue groups

Maintainability

266

10 issue groups

I18n

42

3 issue groups

Performance

9

1 issue group

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

Sample message

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

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

Sample message

Processing form data without nonce verification.

WARNINGSecurityRequest data is not unslashed$_GET['_wpnonce'] not unslashed before sanitization. Use wp_unslash() or similar156
Category
Security
Occurrences
156
Severity
warning

Sample message

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

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_GET['_wpnonce']121
Category
Security
Occurrences
121
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_GET['_wpnonce']

WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$_menu_item_object".119
Category
Maintainability
Occurrences
119
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$_menu_item_object".

WARNINGSecurityMissing nonce verificationProcessing form data without nonce verification.68
Category
Security
Occurrences
68
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'.53
Category
Security
Occurrences
53
Severity
error

Sample message

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

ERRORMaintainabilitycurl curl setoptUsing cURL functions is highly discouraged. Use wp_remote_get() instead.43
Category
Maintainability
Occurrences
43
Severity
error

Sample message

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

WARNINGSecurityInput is not validatedDetected usage of a possibly undefined superglobal array index: $_GET['_wpnonce']. Check that the array index exists before using it.24
Category
Security
Occurrences
24
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_GET['_wpnonce']. Check that the array index exists before using it.

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.23
Category
Maintainability
Occurrences
23
Severity
warning

Sample message

Use of a direct database call is discouraged.

Show 15 more
WARNINGMaintainabilityNo Caching22
Category
Maintainability
Occurrences
22
Severity
warning

Sample message

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

ERRORMaintainabilityMissing direct file access protection21
Category
Maintainability
Occurrences
21
Severity
error

Sample message

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

WARNINGSecurityInterpolated SQL is not prepared19
Category
Security
Occurrences
19
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $alias at " $andor_op ($alias.meta_value $like_op %s)"

ERRORI18nMissing Arg Domain19
Category
I18n
Occurrences
19
Severity
error

Sample message

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

ERRORI18nNon Singular String Literal Text16
Category
I18n
Occurrences
16
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: $falang_model->get_option('azure_key','')

WARNINGMaintainabilityNon-prefixed hook name11
Category
Maintainability
Occurrences
11
Severity
warning

Sample message

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

WARNINGSecurityDatabase parameter is not escaped9
Category
Security
Occurrences
9
Severity
warning

Sample message

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

WARNINGPerformancePost Not In exclude9
Category
Performance
Occurrences
9
Severity
warning

Sample message

Using exclusionary parameters, like exclude, in calls to get_posts() should be done with caution, see https://wpvip.com/documentation/performance-improvements-by-removing-usage-of-post__not_in/ for more information.

ERRORSecuritySQL query is not prepared8
Category
Security
Occurrences
8
Severity
error

Sample message

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

WARNINGMaintainabilityNon-prefixed function8
Category
Maintainability
Occurrences
8
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "activate_falang".

ERRORMaintainabilitystrip tags strip tags7
Category
Maintainability
Occurrences
7
Severity
error

Sample message

strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.

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

ERRORSecurityDatabase parameter is not escaped6
Category
Security
Occurrences
6
Severity
error

Sample message

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

ERRORMaintainabilitycurl curl close6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

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

ERRORMaintainabilitycurl curl error6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

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

External Connections

Not analyzed yet.

Score History

First score snapshot

v1.4.4

22

Latest

Findings
1,485
Errors
716
Warnings
769
Check
2.0.0

Relationship Map

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

29 nodes

Related Plugins