Web Stories
Slug: web-stories · Google · 70,000+
Overall Score
Good overall quality
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.
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 4:46 am (5 minutes ago)
Score Breakdown
Why this score?
Top deductions are based on 1 affected rules, reducing this category by 32 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Security issue: Warning | 8 | -32 | 100% |
Why this score?
Top deductions are based on 4 affected rules, reducing this category by 17 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Repo issue: Error | 1 | -8 | 47.1% |
| Last update is over one year old | 1 | -5 | 29.4% |
| Tested up to version is behind current WordPress | 1 | -3 | 17.6% |
Plus 1 additional rules with smaller impact.
Show all rules (1 more)
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Repo issue: Notice | 1 | -1 | 5.9% |
Why this score?
Top deductions are based on 1 affected rules, reducing this category by 9 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Performance issue: Warning | 3 | -9 | 100% |
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.
Why this score?
Top deductions are based on 1 affected rules, reducing this category by 8 total points.
| Rule | Hits | Impact | Share |
|---|---|---|---|
| Accessibility issue: Warning | 4 | -8 | 100% |
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: 1.42.0
- Active Installs: 70,000+
- Last Updated: 2025-05-15 13:13:00
- Tested up to: 6.8.5
- Requires PHP: 7.4
- Rating: 4.2/5 (85 ratings)
- Support: 1/1 resolved (100%)
- View on WordPress.org
- Download Plugin
Scan Summary
- Errors: 1
- Warnings: 15
- Notices: 1
- Last Scanned: 2026-05-25 14:25:37
- Score confidence: 100/100
What Changed Since Last Scan
Run at least two completed scans to view issue deltas.
Detected Issues
| Severity | Category | Message | File | Fix Guidance |
|---|---|---|---|---|
| ERROR | REPO | Plugin package does not contain a main plugin file with a valid plugin header. |
Quick
Ensure the package root contains a plugin bootstrap file with standard WordPress plugin headers.
Moderate
Apply the same remediation pattern across repo findings and re-scan to confirm error issues drop.
Advanced
Add automated linting, CI checks, and team review guidance so this issue class is prevented in future releases.
|
|
| WARNING | PERFORMANCE | flush_rewrite_rules() detected. | includes/Migrations/Rewrite_Flush.php |
Quick
Only flush rewrite rules during activation or explicit maintenance flows.
Moderate
Apply the same remediation pattern across performance 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.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | includes/Renderer/Story/Image.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | includes/Renderer/Story/Embed.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | includes/Renderer/Story/Singleton.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | ACCESSIBILITY | Image markup without an alt attribute detected. | includes/Renderer/Stories/Renderer.php |
Quick
Add alt attributes to the flagged image tags, or alt="" for decorative images.
Moderate
Audit all templates/components for missing alternative text and update content guidelines.
Advanced
Integrate accessibility testing in CI (axe/pa11y) and block releases with critical a11y violations.
|
| WARNING | PERFORMANCE | flush_rewrite_rules() detected. | includes/Story_Archive.php |
Quick
Only flush rewrite rules during activation or explicit maintenance flows.
Moderate
Apply the same remediation pattern across performance 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.
|
| WARNING | SECURITY | Raw superglobal access detected. | includes/Integrations/AMP.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 | PERFORMANCE | flush_rewrite_rules() detected. | includes/Infrastructure/ServiceBasedPlugin.php |
Quick
Only flush rewrite rules during activation or explicit maintenance flows.
Moderate
Apply the same remediation pattern across performance 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.
|
| WARNING | SECURITY | Raw superglobal access detected. | includes/Admin/Editor.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. | includes/Admin/Admin.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. | includes/Admin/Activation_Notice.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. | includes/Admin/Dashboard.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. | includes/templates/frontend/single-web-story.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 | Use of base64_decode() detected. | includes/Decoder.php |
Quick
Ensure any encoded payloads are necessary, documented, and never used to obscure executable logic.
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.
|
| WARNING | SECURITY | Use of base64_decode() detected. | includes/REST_API/Stories_Base_Controller.php |
Quick
Ensure any encoded payloads are necessary, documented, and never used to obscure executable logic.
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 | Translation functions are present, but no textdomain loader was detected. |
Quick
Call load_plugin_textdomain() during plugin bootstrap so translations can be loaded.
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.
|
Score History
No history available yet. · All-Time High: N/A
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 |
|---|---|---|---|---|---|---|---|
| Web Stories <= 1.37.0 - Authenticated (Contributor+) Stored Cross-Site Scripting | N/A | LOW | Closed | *-1.37.0 | 1.38.0 | 2024-12-11 00:00:00 | Wordfence |
| Web Stories <= 1.24.0 - Server Side Request Forgery | N/A | LOW | Closed | *-1.24.0 | 1.25.0 | 2022-10-26 00:00:00 | Wordfence |
| Web Stories for WordPress <= 1.31.0 - Insufficient Authorization | N/A | LOW | Closed | [*, 1.32.0) | 1.32.0 | 2023-05-08 00:00:00 | Wordfence |