WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

Dynamic hook name

The plugin invokes a hook name built from a variable or expression that Plugin Check cannot verify as plugin-prefixed.

medium weight

Why It Shows Up

Plugin Check found a dynamic hook name such as a variable, array value, or concatenated expression. Static analysis cannot prove the final hook name starts with the plugin's namespace.

Why It Matters

Dynamic hook names can be valid, but unclear naming makes collisions and unexpected integrations harder to reason about across WordPress, themes, and other plugins.

How to Fix

  • Prefer a literal hook name with the plugin prefix when the hook is part of the plugin's public API.
  • If the hook must be dynamic, keep a fixed plugin-prefixed base before the variable portion.
  • Document public dynamic hooks so integrators know the expected final hook names.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#151ManageWP Worker225075651m+Non-prefixed class
#152WP Affiliate Disclosure221,3581,5041k+Non-prefixed global variable
#153Asset CleanUp: Page Speed Booster222,0302,485100k+Non-prefixed global variable
#154Master Accordion ( Former WP Awesome FAQ Plugin )221,7741,286700Non-prefixed global variable
#155WP Easy Pay – Payment and Donation form Builder for Square229101,8351k+Non-prefixed global variable
#156WP Express Checkout (Fast Payments via PayPal & Stripe)225916271k+Output is not escaped
#157WP Umbrella: Update Backup Restore & Monitoring2291891670k+Exception output is not escaped
#158SchedulePress – Auto Post & Publish, Auto Social Share, Schedule Posts with Editorial Calendar & Missed Schedule Post Publisher2230724510k+Output is not escaped
#159AidWP – Donation & Payment Forms (Stripe Powered)221,3171,675800Non-prefixed global variable
#160NotifSMS – SMS Notifications OTP & 2FA for WordPress & WooCommerce221,3531,4122k+Non-prefixed global variable
#161User Frontend: AI Powered Frontend Posting, User Directory, Profile Builder, Membership & User Registration222871,43220k+Non-prefixed global variable
#162WPBITS Addons For Elementor Page Builder229961,3992k+Non-prefixed global variable
#163WPFunnels – Funnel Builder for WooCommerce with Checkout & One Click Upsell225,9962,7905k+Text Domain Mismatch
#164ShopWP22430225700Text Domain Mismatch
#165WPSSO Core – Complete Schema Markup and Meta Tags221,4074125k+Missing Translators Comment
#166WUPO Group Attributes for WooCommerce225921,391400Non-prefixed global variable
#167YITH WooCommerce Ajax Search224081,65930k+Non-prefixed global variable
#168Recipe Cards For Your Food Blog from Zip Recipes221,1261,7311k+Non-prefixed global variable
#169Print Labels with Barcodes. Create price tags, product labels, order labels for WooCommerce231,1851,0271k+Text Domain Mismatch
#170Gutenberg Blocks – ACF Blocks Suite231,0971,449400Non-prefixed global variable
#171Advanced Custom Fields: Extended231,885329100k+Text Domain Mismatch
#172Custom WooCommerce Checkout Fields Editor237551,3862k+Non-prefixed global variable
#173Advanced Menu Manager Pro – Built for Content-heavy WordPress Sites to Add, Filter, Lock, and Edit Menus Easily235451,397400Non-prefixed global variable
#174Advanced Ads – Ad Manager & AdSense23573738100k+Non-prefixed global variable
#175Advanced Custom Fields (ACF®)232,4561,2182m+Text Domain Mismatch
#176Advanced Product Labels for WooCommerce2392155920k+Text Domain Mismatch
#177AI Engine – The Chatbot, AI Framework & MCP for WordPress23412539100k+error log error log
#178Fullscreen Menu235371,2872k+Non-prefixed global variable
#179Autocomplete Address and Location Picker for WooCommerce236301,2992k+Non-prefixed global variable
#180BA Book Everything231,1841,08610k+Output is not escaped
#181Kadence Security – Password, Two Factor Authentication, and Brute Force Protection231,053967700k+Missing Translators Comment
#182BuddyDrive237221,5971k+Non-prefixed global variable
#183Announcement & Notification Banner – Bulletin239301,5762k+Non-prefixed global variable
#184Business Directory Plugin – Easy Listing Directories for WordPress236111,05810k+Non-prefixed global variable
#185Cart Notices for WooCommerce236504712k+Text Domain Mismatch
#186Products Suggestions for WooCommerce23718502700Output is not escaped
#187Grid & Styler For Contact Form 7 And Divi235481,341500Non-prefixed global variable
#188All In One Login — Login Page Security and Customization for WordPress with Google reCAPTCHA, Social Login, Temporary Login, 2FA, and more.237501,35960k+Non-prefixed global variable
#189Classified Listing – AI-Powered Classified ads & Business Directory231552,0749k+Non-prefixed global variable
#190Content Aware Sidebars – Fastest Widget Area Plugin239931,73830k+Non-prefixed global variable
#191Content Views – Post Grid & Filter, Recent Posts, Category Posts … (Shortcode, Gutenberg Blocks, and Widgets for Elementor)23306587100k+Dynamic hook name
#192Contest Gallery – Upload & Vote Photos, Media, Sell with PayPal & Stripe239,31026,6421k+Non-prefixed global variable
#193Free Theme Builder for Elementor – CRT Addons (Header, Footer, Archive, WooCommerce & 50+ Widgets)237912,331400Non-prefixed global variable
#194Currency Exchange for WooCommerce23703502500Output is not escaped
#195Auto Post Cleaner237151,3781k+Non-prefixed global variable
#196Disable Bloat for WordPress & WooCommerce238631,32510k+Non-prefixed global variable
#197DK PDF – WordPress PDF Generator237443353k+Exception output is not escaped
#198Dokan: AI Powered WooCommerce Multivendor Marketplace Solution – Build Your Own Amazon, eBay, Etsy2317082140k+Non-prefixed global variable
#199Double Opt-In for Contact Form 7 & Avada – Secure, GDPR-Compliant Email Verification236756431k+Unsafe printing function
#200Easy Age Verify231,1382,6311k+Non-prefixed global variable