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
#1MDTF – Meta Data and Taxonomies Filter161,5501,9561k+Non-prefixed global variable
#2wpForo Forum174,0332,92220k+Unsafe printing function
#3Podlove Podcast Publisher182,3261,4293k+Output is not escaped
#4Property Hive181,9576,0273k+Missing nonce verification
#5Realtyna Organic IDX plugin + WPL Real Estate189303,6362k+Non-prefixed global variable
#6RestroPress – Online Food Ordering System185213,0831k+Non-prefixed global variable
#7Shopping Cart & eCommerce Store185,45917,2984k+Non-prefixed global variable
#8WPPizza – A Restaurant Plugin184,6892,7031k+Text Domain Mismatch
#9Element Pack – Widgets, Templates & Addons for Elementor1910,446525100k+Text Domain Mismatch
#10Block Slider – Responsive Image Slider, Video Slider & Post Slider195551,2913k+Non-prefixed global variable
#11Download Monitor194251,36480k+Non-prefixed hook name
#12Go Fetch Jobs (for WP Job Manager)191,4101,741700Non-prefixed global variable
#13AI Infographic Maker191,517599600Output is not escaped
#14Really Simple Security – Simple and Performant Security (formerly Really Simple SSL)195413853m+Missing Translators Comment
#15Membership Plugin – Kadence Memberships195,0822,9829k+Text Domain Mismatch
#16Scrollsequence – Cinematic Scroll Image Animation Plugin198781,5284k+Non-prefixed global variable
#17SendPress Newsletters192,2931,4222k+Output is not escaped
#18SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments195251,12090k+Non-prefixed global variable
#19WordLift – AI powered SEO – Schema19393955400Non-prefixed hook name
#20WP Email Template193423502k+Exception output is not escaped
#21AweBooking – Hotel Booking System203095141k+Non-prefixed global variable
#22Brizy – Page Builder2058972070k+Output is not escaped
#23Post Form – Registration Form – Profile Form for User Profiles – Frontend Content Forms for User Submissions (UGC)207362,112900Non-prefixed global variable
#24SysBasics Customize My Account for WooCommerce – Live My Account Customizer208759118k+Non-prefixed global variable
#25Event Espresso – Event Registration & Ticketing Sales2012,6982,135600Text Domain Mismatch
#26GiveWP – Donation Plugin and Fundraising Platform203,4323,575100k+Output is not escaped
#27Leaky Paywall20320782700Nonce verification recommended
#28MBE eShip205277401k+Non-prefixed global variable
#29MAS Videos205191,6931k+Non-prefixed global variable
#30Microthemer Lite – Visual Editor to Customize CSS201,0041,69910k+Non-prefixed global variable
#31Powered Cache – Caching and Optimization for WordPress – Easily Improve PageSpeed & Web Vitals Score201472313k+Exception output is not escaped
#32Quill Forms | Conversational Multi Step Forms, Surveys & quizzes204013683k+Text Domain Mismatch
#33Remove Add to Cart WooCommerce206161,3784k+Non-prefixed global variable
#34Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF20557541100k+Output is not escaped
#35Events Manager – OpenStreetMaps20559444700Output is not escaped
#36WPJAM Basic203283564k+Output is not escaped
#37School Management System – WPSchoolPress203535,2751k+Non-prefixed global variable
#38Forumax – AI Powered Advanced Community Forum Plugin214,9364,357600Text Domain Mismatch
#39bbPress219293,672100k+Non-prefixed function
#40CartFlows – Funnel Builder & Checkout Plugin for WooCommerce21462654200k+Text Domain Mismatch
#41SMS Extension for Contact Form 7217201,387400Non-prefixed global variable
#42Daily Prayer Time219471,7801k+Non-prefixed global variable
#43Free Downloads WooCommerce214303594k+Output is not escaped
#44Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More212,5721,2771m+Output is not escaped
#45eRoom – Webinar & Meeting Plugin for Zoom, Google Meet, Microsoft Teams211864379k+Non-prefixed global variable
#46ERP: Complete HR, Recruitment, Accounting & CRM Suite with WooCommerce CRM Support218295,9665k+Direct Query
#47EventPrime – Events Calendar, Bookings and Tickets218724,2977k+Non-prefixed global variable
#48Feeds for YouTube (YouTube video, channel, and gallery plugin)21558978100k+Output is not escaped
#49Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More21521,959300k+Non-prefixed global variable
#50If-So Dynamic Content – Elementor & All Page Builders Personalization218897257k+Unsafe printing function