plugin_header_no_license
plugin header no license
The plugin's license metadata is missing, invalid, or inconsistent.
Why It Shows Up
Plugin Check found license information that does not match WordPress.org expectations across the plugin header, readme, or bundled files.
Why It Matters
Clear license metadata helps users and repository reviewers understand whether the plugin can be distributed and modified.
How to Fix
- Declare the license in the plugin header and readme.
- Use a valid SPDX-style license name or a WordPress.org-accepted GPL-compatible license.
- Keep bundled third-party library licenses intact and compatible.
References
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1951 | USPS Simple Shipping for Woocommerce | 65 | 20 | 11 | 8k+ | Exception output is not escaped | ||
| #1952 | WP Change Default From Email | 65 | 51 | 7 | 10k+ | Non Singular String Literal Domain | ||
| #1953 | WP SEO HTML Sitemap | 65 | 22 | 15 | 6k+ | Output is not escaped | ||
| #1954 | ACF: Rus-To-Lat | 66 | 15 | 11 | 2k+ | Output is not escaped | ||
| #1955 | Custom Login Page Templates – Change Logo, Background and CSS | 66 | 25 | 5 | 2k+ | Missing Arg Domain | ||
| #1956 | Duplicate Menu | 66 | 11 | 7 | 100k+ | Unsafe printing function | ||
| #1957 | Elementic | 66 | 22 | 9 | 900 | Text Domain Mismatch | ||
| #1958 | Export Categories | 66 | 22 | 13 | 1k+ | Output is not escaped | ||
| #1959 | Goaffpro Affiliate Marketing | 66 | 6 | 28 | 4k+ | Nonce verification recommended | ||
| #1960 | Hide Title | 66 | 13 | 6 | 30k+ | Output is not escaped | ||
| #1961 | HiFi (Head Injection, Foot Injection) | 66 | 13 | 11 | 2k+ | Output is not escaped | ||
| #1962 | IranDargah Payment Gateway for Woocommerce | 66 | 66 | 26 | 400 | Text Domain Mismatch | ||
| #1963 | LeadBack – Callback, Chatbot and Live Chat Widgets for WordPress sites | 66 | 17 | 5 | 600 | Unsafe printing function | ||
| #1964 | Page Title Splitter | 66 | 29 | 8 | 1k+ | wp function not compatible with requires wp | ||
| #1965 | Page Meta | 66 | 26 | 14 | 700 | Missing Arg Domain | ||
| #1966 | Plugin Compatibility Checker | 66 | 73 | 18 | 9k+ | Text Domain Mismatch | ||
| #1967 | Product Size Chart For WooCommerce | 66 | 9 | 22 | 6k+ | Non-prefixed hook name | ||
| #1968 | Raw HTML | 66 | 17 | 35 | 10k+ | Non-prefixed function | ||
| #1969 | WP Anti-Clickjack | 66 | 4 | 42 | 4k+ | Nonce verification recommended | ||
| #1970 | WP Redis | 66 | 11 | 25 | 9k+ | Interpolated SQL is not prepared | ||
| #1971 | Video Popup for Elementor – WPTD | 66 | 33 | 13 | 1k+ | Output is not escaped | ||
| #1972 | Address correction autocomplete for Woo | 67 | 19 | 9 | 1k+ | Text Domain Mismatch | ||
| #1973 | Affiliates Manager Google reCAPTCHA Integration | 67 | 18 | 10 | 400 | Request data is not unslashed | ||
| #1974 | Awesome Contact Form7 for Elementor | 67 | 20 | 30 | 7k+ | Non-prefixed global variable | ||
| #1975 | Card Elements for Elementor | 67 | 15 | 116 | 3k+ | Non-prefixed global variable | ||
| #1976 | Custom Link Widget | 67 | 28 | 0 | 1k+ | Output is not escaped | ||
| #1977 | Duplicate TEC Event | 67 | 12 | 10 | 900 | date date | ||
| #1978 | Dynamic Text Field For Contact Form 7 | 67 | 20 | 7 | 1k+ | Unsafe printing function | ||
| #1979 | Flexible Product Fields (WooCommerce Product Addons) – WooCommerce Product Page Editor | 67 | 57 | 98 | 10k+ | Non-prefixed global variable | ||
| #1980 | Forget Spam Comment | 67 | 5 | 10 | 10k+ | Input is not sanitized | ||
| #1981 | Hide Plugins | 67 | 7 | 15 | 1k+ | Nonce verification recommended | ||
| #1982 | Kraken.io Image Optimizer – Compress, Convert to WebP & AVIF, Resize & Bulk Optimize | 67 | 293 | 80 | 9k+ | Text Domain Mismatch | ||
| #1983 | Meks Audio Player | 67 | 25 | 7 | 1k+ | Output is not escaped | ||
| #1984 | MetaTag | 67 | 7 | 13 | 600 | Input is not validated | ||
| #1985 | Mouse cursor customizer | 67 | 5 | 38 | 1k+ | Missing nonce verification | ||
| #1986 | Simple Calendar – Advanced Custom Fields | 67 | 18 | 6 | 400 | Output is not escaped | ||
| #1987 | Simple Membership Custom Messages | 67 | 47 | 0 | 7k+ | Text Domain Mismatch | ||
| #1988 | WP Forms + Sprout Invoices – Easy Invoice & Quote Submissions | 67 | 40 | 12 | 400 | Text Domain Mismatch | ||
| #1989 | Text Expander | 67 | 50 | 15 | 600 | wp function not compatible with requires wp | ||
| #1990 | BitPay Gateway for WooCommerce | 67 | 64 | 21 | 400 | Text Domain Mismatch | ||
| #1991 | Expand Tabs for WooCommerce | 67 | 10 | 57 | 1k+ | Non-prefixed global variable | ||
| #1992 | WP-Copyright-Protection | 67 | 24 | 5 | 5k+ | wp function not compatible with requires wp | ||
| #1993 | JAMstack Deployments | 67 | 33 | 3 | 1k+ | Short PHP open tag found | ||
| #1994 | WP Notification Bars | 67 | 13 | 32 | 10k+ | Request data is not unslashed | ||
| #1995 | WP Post Branches | 67 | 16 | 12 | 4k+ | Nonce verification recommended | ||
| #1996 | Auto Image Title & Alt | 68 | 13 | 4 | 400 | Missing direct file access protection | ||
| #1997 | Collapsing Categories | 68 | 29 | 8 | 4k+ | Missing direct file access protection | ||
| #1998 | Comment Approved | 68 | 6 | 14 | 500 | Input is not sanitized | ||
| #1999 | Exchange Rates Today | 68 | 9 | 10 | 400 | Non-prefixed function | ||
| #2000 | Expire Sticky Posts | 68 | 16 | 8 | 1k+ | Text Domain Mismatch |