WordPress.WP.EnqueuedResourceParameters.NotInFooter
Not In Footer
A script or stylesheet is loaded without the expected WordPress enqueue metadata.
Why It Shows Up
The scan found missing versions, missing footer placement, or scripts/styles printed directly instead of being enqueued.
Why It Matters
Proper enqueueing lets WordPress manage dependencies, versions, placement, caching, and compatibility with other plugins.
How to Fix
- Register or enqueue assets with handles, dependencies, versions, and placement arguments.
- Use a file modification time or plugin version for local asset versions when appropriate.
- Avoid printing script or stylesheet tags directly in templates.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1501 | Blogsqode – Blog Layouts and News Post Design | 35 | 430 | 63 | 400 | Text Domain Mismatch | ||
| #1502 | Custom Order Status Manager for WooCommerce | 35 | 630 | 67 | 30k+ | Text Domain Mismatch | ||
| #1503 | BSK Forms Blacklist | 35 | 831 | 550 | 1k+ | Output is not escaped | ||
| #1504 | BTCPay Server – Accept Bitcoin payments in WooCommerce | 35 | 48 | 86 | 1k+ | Missing nonce verification | ||
| #1505 | Business Hours Indicator | 35 | 139 | 106 | 8k+ | Alternative PHP tag found | ||
| #1506 | CF7 Spreadsheets | 35 | 100 | 62 | 400 | Text Domain Mismatch | ||
| #1507 | CF7 Submissions – Securely Store Contact Form 7 Data and Attachments, Reply to the Sender and more | 35 | 16 | 119 | 2k+ | Non-prefixed global variable | ||
| #1508 | ChatHelp – Click to Chat Button, WooCommerce Chat to Order & Floating Chat Form | 35 | 31 | 188 | 1k+ | Non-prefixed global variable | ||
| #1509 | Cloudflare | 35 | 28 | 85 | 200k+ | Non-prefixed namespace | ||
| #1510 | Cookie Information – Cookie Banner with Consent Mode v2 | 35 | 185 | 28 | 2k+ | Output is not escaped | ||
| #1511 | Core Framework | 35 | 70 | 62 | 10k+ | Text Domain Mismatch | ||
| #1512 | Coupon X – Discount Popups, Promo Codes Pop Ups for WooCommerce & Announcement Popups | 35 | 30 | 168 | 1k+ | Non-prefixed global variable | ||
| #1513 | Create Block Theme | 35 | 43 | 5 | 20k+ | unlink unlink | ||
| #1514 | CrowdSec | 35 | 130 | 119 | 2k+ | Output is not escaped | ||
| #1515 | Cue by AudioTheme.com | 35 | 28 | 150 | 6k+ | Non-prefixed hook name | ||
| #1516 | Custom CSS and JavaScript | 35 | 38 | 91 | 10k+ | Input is not sanitized | ||
| #1517 | Custom JavaScript Editor | 35 | 8 | 23 | 400 | Missing Version | ||
| #1518 | Custom Post Type Permalinks | 35 | 8 | 4 | 200k+ | Setting is missing a sanitization callback | ||
| #1519 | Deposits & Partial Payments for WooCommerce | 35 | 174 | 144 | 5k+ | Text Domain Mismatch | ||
| #1520 | PiWeb Disable payment method / Partial payment for WooCommerce | 35 | 55 | 221 | 4k+ | Non-prefixed class | ||
| #1521 | Disable XML-RPC-API | 35 | 444 | 52 | 100k+ | Text Domain Mismatch | ||
| #1522 | Easy Dash for LearnDash | 35 | 623 | 88 | 700 | Text Domain Mismatch | ||
| #1523 | Easy Panorama | 35 | 120 | 10 | 500 | Non Singular String Literal Domain | ||
| #1524 | Easy Post Types and Fields | 35 | 138 | 135 | 1k+ | Text Domain Mismatch | ||
| #1525 | Easy Social Icons | 35 | 182 | 158 | 20k+ | Output is not escaped | ||
| #1526 | Editorial Calendar | 35 | 127 | 160 | 20k+ | Output is not escaped | ||
| #1527 | Elementor Website Builder – more than just a page builder | 35 | 46 | 428 | 10m+ | Non-prefixed global variable | ||
| #1528 | Email Subscription Popup — Newsletter & GDPR Consent | 35 | 683 | 193 | 1k+ | Output is not escaped | ||
| #1529 | Embed Extended – Embed Maps, Videos, Websites, Source Codes, and more | 35 | 102 | 92 | 400 | Non-prefixed global variable | ||
| #1530 | Enable Responsive Image | 35 | 1 | 1 | 1k+ | Hidden files included | ||
| #1531 | EnvíaloSimple: Email Marketing y Newsletters | 35 | 147 | 250 | 2k+ | Nonce verification recommended | ||
| #1532 | EWWW Image Optimizer | 35 | 225 | 729 | 1m+ | Direct Query | ||
| #1533 | AI Popup Builder & Popup Maker by OptiMonk | 35 | 81 | 65 | 4k+ | Text Domain Mismatch | ||
| #1534 | Export Featured Images | 35 | 176 | 67 | 1k+ | Output is not escaped | ||
| #1535 | WP2Social Auto Publish | 35 | 643 | 215 | 9k+ | Unsafe printing function | ||
| #1536 | Reviews Widgets for Google, TripAdvisor, Yelp & Recommendations | 35 | 255 | 225 | 10k+ | Output is not escaped | ||
| #1537 | Flexible Checkout Fields for WooCommerce – WooCommerce Checkout Manager | 35 | 64 | 64 | 80k+ | Non-prefixed global variable | ||
| #1538 | Force Regenerate Thumbnails | 35 | 12 | 17 | 200k+ | unlink unlink | ||
| #1539 | Force Reinstall | 35 | 118 | 34 | 2k+ | Output is not escaped | ||
| #1540 | Full Width Banner Slider Wp | 35 | 239 | 140 | 2k+ | Output is not escaped | ||
| #1541 | GA4WP – Analytics Dashboard for the Website | 35 | 434 | 157 | 2k+ | Text Domain Mismatch | ||
| #1542 | GDPR Compliance & Cookie Consent | 35 | 251 | 61 | 4k+ | Output is not escaped | ||
| #1543 | Get a Newsletter | 35 | 138 | 144 | 400 | Output is not escaped | ||
| #1544 | Reviews Block for Google | 35 | 244 | 35 | 1k+ | Missing Arg Domain | ||
| #1545 | Health Check & Troubleshooting | 35 | 264 | 238 | 300k+ | Missing Arg Domain | ||
| #1546 | Social Comments by Heateor | 35 | 285 | 35 | 700 | Unsafe printing function | ||
| #1547 | Help Scout | 35 | 11 | 13 | 400 | Missing direct file access protection | ||
| #1548 | Iframely – WP media embeds, cards and blocks | 35 | 136 | 43 | 2k+ | Unsafe printing function | ||
| #1549 | Image Slider | 35 | 192 | 95 | 4k+ | Output is not escaped | ||
| #1550 | Image Watermark | 35 | 85 | 181 | 40k+ | Missing nonce verification |