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 |
|---|---|---|---|---|---|---|---|---|
| #2651 | Contact Form 7: Accessible Defaults | 69 | 3 | 28 | 5k+ | Nonce verification recommended | ||
| #2652 | Gist All-In-One Marketing – Live Chat, Popups, Email | 69 | 24 | 11 | 500 | Output is not escaped | ||
| #2653 | Media Slider for Photos Images Videos | 69 | 10 | 23 | 2k+ | Missing Version | ||
| #2654 | Scroll Down Arrow | 69 | 30 | 30 | 800 | Missing Arg Domain | ||
| #2655 | Simple YouTube Embed | 69 | 11 | 11 | 5k+ | Nonce verification recommended | ||
| #2656 | SlingBlocks – Gutenberg Blocks by FunnelKit (Formerly WooFunnels) | 69 | 17 | 952 | 7k+ | Non-prefixed global variable | ||
| #2657 | TJ Custom CSS | 69 | 18 | 10 | 8k+ | Output is not escaped | ||
| #2658 | Easy Username Updater | 69 | 19 | 28 | 10k+ | Missing Arg Domain | ||
| #2659 | WC Variations Radio Buttons | 69 | 12 | 21 | 3k+ | Non-prefixed global variable | ||
| #2660 | Zapper Payments | 69 | 11 | 11 | 600 | Output is not escaped | ||
| #2661 | Animentor – Lottie & Bodymovin for Elementor | 70 | 18 | 8 | 4k+ | Output is not escaped | ||
| #2662 | BestPrice Analytics Integration | 70 | 35 | 10 | 1k+ | Text Domain Mismatch | ||
| #2663 | Checkfront Online Booking System | 70 | 32 | 16 | 2k+ | wp function not compatible with requires wp | ||
| #2664 | Embed Code – Headers & Footers by DesignBombs | 70 | 19 | 5 | 4k+ | Output is not escaped | ||
| #2665 | fitness calculators | 70 | 94 | 25 | 600 | Missing Arg Domain | ||
| #2666 | Ghost | 70 | 25 | 12 | 600 | Output is not escaped | ||
| #2667 | Post Grid & Post Slider – Carousel, Filter Tabs & Related Posts | 70 | 6 | 53 | 1k+ | Request data is not unslashed | ||
| #2668 | Remove Taxonomy Base Slug | 70 | 12 | 18 | 5k+ | Deprecated parameter: get_terms parameter 2 | ||
| #2669 | Spocket ‑ US & EU Dropshipping | 70 | 15 | 31 | 1k+ | Direct Query | ||
| #2670 | SQL Executioner | 70 | 18 | 17 | 2k+ | Non-prefixed global variable | ||
| #2671 | SubHeading | 70 | 22 | 13 | 1k+ | Non Singular String Literal Domain | ||
| #2672 | WEBKINDER Integration for Google Analytics and Google Tag Manager | 70 | 15 | 22 | 10k+ | Output is not escaped | ||
| #2673 | Quick Buy For Woocommerce | 70 | 105 | 22 | 1k+ | Text Domain Mismatch | ||
| #2674 | Web Accessibility with Max Access | 71 | 22 | 11 | 800 | curl curl setopt | ||
| #2675 | Advanced Custom Fields: Price Field | 71 | 12 | 7 | 400 | Output is not escaped | ||
| #2676 | Bold Timeline Lite | 71 | 220 | 561 | 10k+ | Non-prefixed global variable | ||
| #2677 | Bootstrap Shortcodes | 71 | 21 | 11 | 5k+ | Missing direct file access protection | ||
| #2678 | Easy Sticky Buttons | 71 | 21 | 16 | 600 | Short PHP open tag found | ||
| #2679 | Repeater Fields for WPForms | 71 | 173 | 18 | 500 | wp function not compatible with requires wp | ||
| #2680 | Tax Switch for WooCommerce | 71 | 3 | 20 | 900 | Non-prefixed hook name | ||
| #2681 | WindPress – Tailwind CSS integration for WordPress | 71 | 16 | 106 | 3k+ | Non-prefixed hook name | ||
| #2682 | WP Widget in Navigation | 71 | 37 | 15 | 3k+ | Non Singular String Literal Domain | ||
| #2683 | Amazing Affiliates – Toolkit for Amazon Associates with Amazon Product Blocks and Amazon PAAPI5 / Creators API integration | 72 | 3 | 650 | 600 | Non-prefixed global variable | ||
| #2684 | Bulk Term Editor | 72 | 19 | 9 | 400 | Output is not escaped | ||
| #2685 | Featured Image in RSS Feed by MailerLite | 72 | 12 | 7 | 1k+ | Output is not escaped | ||
| #2686 | Advanced Datepicker – Restricts Date for Contact Form 7 | 72 | 228 | 11 | 400 | wp function not compatible with requires wp | ||
| #2687 | Social Media Icons Widget | 72 | 181 | 10 | 1k+ | badly named files | ||
| #2688 | Tabs Widget for Page Builder | 72 | 22 | 7 | 3k+ | Text Domain Mismatch | ||
| #2689 | Waymark | 72 | 16 | 32 | 900 | Missing direct file access protection | ||
| #2690 | Webyx for Gutenberg – Fullpage Fullscreen Scrolling Websites | 72 | 14 | 11 | 600 | Output is not escaped | ||
| #2691 | Advanced Custom Fields – Widget Relationship Field add-on | 73 | 18 | 7 | 500 | Output is not escaped | ||
| #2692 | BuddyPress Activity Shortcode | 73 | 9 | 14 | 2k+ | Non-prefixed hook name | ||
| #2693 | Conditionally display featured image on singular posts and pages | 73 | 17 | 6 | 30k+ | Output is not escaped | ||
| #2694 | Contact Form7: Autocomplete | 73 | 27 | 8 | 500 | Text Domain Mismatch | ||
| #2695 | Custom Datepicker NMR | 73 | 4 | 12 | 1k+ | Missing Version | ||
| #2696 | Freetobook Responsive Widget | 73 | 5 | 14 | 500 | Input is not sanitized | ||
| #2697 | Hide WP Toolbar | 73 | 4 | 13 | 1k+ | trademarked term | ||
| #2698 | jQuery Lightbox For Native Galleries | 73 | 26 | 7 | 4k+ | Text Domain Mismatch | ||
| #2699 | Meks Easy Ads Widget | 73 | 21 | 9 | 10k+ | Output is not escaped | ||
| #2700 | Popup for Contact Form 7 | 73 | 13 | 7 | 800 | Setting is missing a sanitization callback |