Loco Translate

Slug: loco-translate · Tim W · 1,000,000+

Actively maintained

Overall Score

Good overall quality

89
Good

What this score means

Scores are calculated on a 100-point scale by analysing six weighted categories: Security, WP.org Readiness, Performance, Code Quality, Accessibility, and Vulnerabilities. Open vulnerabilities are weighted by severity, CVSS, and patch availability, and incomplete source data can reduce confidence slightly.

  • Excellent The plugin follows best practices across every measured category. It is well-maintained, low-risk, and recommended for production use.
  • Good Strong overall quality with minor areas for improvement. Generally safe to use on most sites.
  • Needs Review Some areas of concern detected. Review the full issues report and weigh the risks before installing on production.
  • High Risk Significant quality or security problems found. Exercise caution — check the details carefully before using this plugin.
Score computed: May 22, 2026 10:33 pm (3 weeks ago). Vulnerability data mode: Live.
High confidence (100/100) based on metadata completeness and vulnerability evidence quality.
Open vulnerabilities are weighted by severity, CVSS, and patch availability, then adjusted slightly when the source data is incomplete.
  • Wordfence: June 10, 2026 3:48 am (55 minutes ago)

No known open vulnerabilities found.

Score Breakdown

Shield
Security
64
Needs Review
Why this score?

Top deductions are based on 1 affected rules, reducing this category by 36 total points.

Rule Hits Impact Share
Security issue: Warning 9 -36 100%
W
WP.org Readiness
95
Excellent
Why this score?

Top deductions are based on 2 affected rules, reducing this category by 5 total points.

Rule Hits Impact Share
Tested up to version is behind current WordPress 1 -3 60%
Repo issue: Notice 2 -2 40%
Speed
Performance
100
Excellent
Why this score?

Top deductions are based on 0 affected rules, reducing this category by 0 total points.

No deductions were applied for this category in the latest score run.

Code
Code Quality
99
Excellent
Why this score?

Top deductions are based on 1 affected rules, reducing this category by 1 total points.

Rule Hits Impact Share
Code Quality issue: Notice 1 -1 100%
A11y
Accessibility
100
Excellent
Why this score?

Top deductions are based on 0 affected rules, reducing this category by 0 total points.

No deductions were applied for this category in the latest score run.

Bug
Vulnerability Status
100
Excellent
Why this score?

Top deductions are based on 0 affected rules, reducing this category by 0 total points.

No deductions were applied for this category in the latest score run.

Plugin Details

  • Version: 2.8.4
  • Active Installs: 1,000,000+
  • Last Updated: 2026-04-28 09:32:00
  • Tested up to: 6.9.4
  • Requires PHP: 7.4
  • Rating: 4.8/5 (449 ratings)
  • Support: 6/11 resolved (55%)
  • View on WordPress.org
  • Download Plugin

Scan Summary

  • Errors: 0
  • Warnings: 9
  • Notices: 3
  • Last Scanned: 2026-05-22 21:33:13
  • Score confidence: 100/100
Scans are performed automatically once per day, and the report will note when source data is stale or incomplete.

What Changed Since Last Scan

Comparing latest scan (2026-05-22 21:33:13) to previous scan (2026-05-21 19:06:44).
New: 0 Resolved: 0 Worsened: 0

New Issues

No items in this category.

Resolved Issues

No items in this category.

Worsened Issues

No items in this category.

Detected Issues

Severity Category Message File Fix Guidance
NOTICE REPO Plugin has no header banner on WordPress.org.
Quick Upload the required WordPress.org banner image sizes in SVN assets.
Moderate Create responsive-safe banner designs with legible copy and branding.
Advanced Integrate listing asset checks in the release pipeline with design QA approvals.
WARNING SECURITY Main plugin file does not appear to guard direct access with an ABSPATH check. loco.php
Quick Add an ABSPATH guard near the top of the main plugin file to prevent direct execution.
Moderate Apply the same remediation pattern across security findings and re-scan to confirm warning issues drop.
Advanced Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
NOTICE REPO Plugin package does not include a license file.
Quick Add a LICENSE or COPYING file so distribution terms are explicit.
Moderate Apply the same remediation pattern across repo findings and re-scan to confirm notice issues drop.
Advanced Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
WARNING SECURITY Raw superglobal access detected. src/test/WordPressTestCase.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Direct database query detected without an immediately visible $wpdb->prepare() wrapper. src/test/WordPressTestCase.php
Quick Wrap dynamic SQL arguments with $wpdb->prepare() in the flagged query.
Moderate Refactor repeated SQL into repository/helper methods that enforce prepared statements by default.
Advanced Add integration tests and static checks that fail builds when direct dynamic SQL is introduced.
NOTICE CODE_QUALITY Short PHP opening tags or inline template tags may reduce compatibility across environments. src/test/TestCase.php
Quick Prefer full <?php opening tags for maximum portability.
Moderate Apply the same remediation pattern across code quality findings and re-scan to confirm notice issues drop.
Advanced Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
WARNING SECURITY Raw superglobal access detected. src/hooks/AdminHooks.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Raw superglobal access detected. src/data/Cookie.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Raw superglobal access detected. src/mvc/Controller.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Raw superglobal access detected. src/mvc/AjaxRouter.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Raw superglobal access detected. src/mvc/AdminRouter.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.
WARNING SECURITY Raw superglobal access detected. src/ajax/MsginitController.php
Quick Wrap direct request values with sanitization and nonce verification in the affected code path.
Moderate Centralize request normalization in helper methods so handlers consume validated input only.
Advanced Adopt typed request DTOs and automated security lint checks for unsanitized superglobal access.

Score History

Range Change: -1 pts · All-Time High: 90/100

All Past Vulnerabilities

Showing all known historical vulnerabilities for this plugin, including open and closed records.

Vulnerability CVE Severity Status Affected Versions Patched Version Updated Source
Loco Translate <= 2.8.2 - Reflected Cross-Site Scripting via 'update_href' Parameter N/A LOW Closed *-2.8.2 2.8.3 2026-03-30 15:35:09 Wordfence
Loco Translate <= 2.8.2 - Authenticated (Translator+) Path Traversal to Limited File Read via 'ref' Parameter N/A LOW Closed *-2.8.2 2.8.3 2026-05-04 13:32:17 Wordfence
Loco Translate <= 2.6.9 - Cross-Site Request Forgery N/A LOW Closed *-2.6.9 2.6.10 2024-06-21 00:00:00 Wordfence
Loco Translate <= 2.6.0 - Authenticated Stored Cross-Site Scripting N/A LOW Closed [*, 2.6.1) 2.6.1 2022-03-22 00:00:00 Wordfence
Loco Translate <= 2.5.3 - Authenticated PHP Code Injection N/A LOW Closed [*, 2.5.4) 2.5.4 2021-10-11 00:00:00 Wordfence